我正在尝试编写我的第一个网站登录脚本,但总是在第9行第9位出错:
“需要对象:'getElementByID(...)'800A01A8。
这是我的真实工作网站的代码:
Call Main
Function Main
Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_")
IE.Visible = True
IE.Navigate "https://www.valuedopinions.com/eng/signin"
Wait IE
With IE.Document
.getElementByID("tx_voputilities_pi1[email]").value = "my@email.com"
.getElementByID("tx_voputilities_pi1[password]").value = "mypassword"
.getElementByID("tx_voputilities_pi1[sign_in]")(0).Submit
End With
End Function
Sub Wait(IE)
Do
WScript.Sleep 500
Loop While IE.ReadyState < 4 And IE.Busy
End Sub
如何编写工作代码?
答案 0 :(得分:3)
您的登录表单元素包含name
而不是id
,因此您需要使用getElementsByName
。另外,INPUT
元素没有Submit
方法,而是使用click
:
With IE.Document
.getElementsByName("tx_voputilities_pi1[email]")(0).value = "my@email.com"
.getElementsByName("tx_voputilities_pi1[password]")(0).value = "mypassword"
.getElementsByName("tx_voputilities_pi1[sign_in]")(0).click
End With