Powershell click on javascript link

拈花ヽ惹草 提交于 2020-01-01 19:32:10

问题


Here is hyperlink code

<a href="javascript:void(1)" onclick="server_playOn(17,2, 'est', this);">
                     Example  
                  </a>

Here is my current powershell code.

Get-Process iexplore | Foreach-Object { $_.CloseMainWindow() }
$username = "user" 
$password = "pass"
$ie = New-Object -comobject InternetExplorer.Application
$ie.visible=$true
$ie.FullScreen=$true
$ie.navigate("http://www.example.com/en/index.shtml")
while($ie.ReadyState -ne 4) {start-sleep -m 100}
trap [Exception] 
{ 
    # This will happen if you're already logged in 
    if($_.Exception.Message -eq "Property 'value' cannot be found on this object; make sure it exists and is settable." -Or $_.Exception.Message -eq "You cannot call a method on a null-valued expression.") 
    { 
        # Try and skip this error 
        continue; } 
    else { 
        # Fail for other Exceptions 
    Write-Host -ForegroundColor Red $_.Exception.Message; } 
    }

##if not logged in
Write-Host -ForegroundColor Green "Logging into example.com";
$ie.document.getElementById("username").value = "$username"
$ie.document.getElementById("pass").value = "$password"
$ie.document.getElementById("frmLogin").submit()
start-sleep 5
$ie.navigate("http://www.example.com/en/link5.shtml")
##need to add click code here

回答1:


Add these lines at the end of the script:

$link = @($ie.Document.getElementsByTagName('A')) | Where-Object {$_.innerText -eq 'Example'}
$link.click()



回答2:


Another way could be

$ie.Document.parentWindow.execScript($Javascript, "javascript")


来源:https://stackoverflow.com/questions/17077386/powershell-click-on-javascript-link

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!