按钮使用powershell单击网站

时间:2017-12-17 11:14:48

标签: html powershell

我正在向网站添加用户ID和密码并尝试登录网站。在下面的代码我无法点击登录按钮我尝试点击提交但无法点击。任何人都可以帮助我

$username = "abcd" 
$password = "abc" 
$ie = New-Object -com InternetExplorer.Application 
$ie.visible=$true
$ie.navigate("https://wss.mahadiscom.in/wss/wss?uiActionName=getCustAccountLogin") 
while($ie.ReadyState -ne 4) {start-sleep -m 100} 
$ie.document.getElementById("loginId").value= "$username" 
$ie.document.getElementById("password").value = "$password" 
$fs = $ie.document.getElementById("loginButton")
$fs.click()

1 个答案:

答案 0 :(得分:1)

使用getElementById

而不是原生IHTMLDocument3_getElementById方法
$username="myname"
$password="mypass"
$url = "http://wss.mahadiscom.in/wss/wss?uiActionName=getCustAccountLogin"
$ie = New-Object -com InternetExplorer.Application
$ie.visible = $true
$ie.navigate($url)
while($ie.Busy) { Start-Sleep -Milliseconds 100 }
$ie.document.IHTMLDocument3_getElementById("loginId").value = $username
$ie.document.IHTMLDocument3_getElementById("password").value = $password
$ie.document.IHTMLDocument3_getElementById("loginButton").click()

它会显示an alert说明"登录名和密码组合不正确。"。

它正在使用IE11和WIN10在我的机器上工作。上述代码中有3个重要更改:

  • 使用http而不是https,因为我在尝试网站时出现了IE网站证书问题。
  • 检查IE的Busy属性以检查IE是否正忙,然后等待它。
  • 使用IHTMLDocument3_getElementById代替getElementById