VBS网站登录脚本 - “需要对象”错误

时间:2013-08-25 15:11:20

标签: login vbscript

我正在尝试编写我的第一个网站登录脚本,但总是在第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

如何编写工作代码?

1 个答案:

答案 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