我想运行一个VBScript,会做以下几点:
- 启动IE浏览器和负载的网站。
- 登录该网站。
- 验证登录是否成功与否。
现在,我已经得到了与部分1和2。其作用涉及3脚本,即验证登录成功,我坚持。 我该怎么做呢?
下面是我得到了一些论坛的代码:
Dim IE
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = 1
IE.navigate "https://my.website.com"
Do While (IE.Busy)
WScript.Sleep 10
Loop
Set Helem = IE.document.getElementByID("formUsername")
Helem.Value = "username" ' change this to yours
Set Helem = IE.document.getElementByID("formPassword")
Helem.Value = "password" ' change this to yours
Set Helem = IE.document.Forms(0)
Helem.Submit
在这样高的水平,以验证登录成功,最好的办法可能是搜索中,只有在登录时出现的HTML元素。如果存在假设你登录,如果它不尝试导航和登录再次。
下面是一个使用莱恩一个非常简单的例子(),以检查是否存在包含文本的元素。 如果你想和做的事情一样验证你可以更复杂,你所看到的比赛你会看到如果你登录的信息。
你可以使用你上面使用抢元素同样的功能,然后比较他们的任何成员。
Dim IE
Dim Helem
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = 1
IE.navigate "http://www.example.com"
Set Helem = IE.document.getElementByID("formUsername")
Helem.Value = "username" ' change this to yours
Set Helem = IE.document.getElementByID("formPassword")
Helem.Value = "password" ' change this to yours
Set Helem = IE.document.Forms(0)
Helem.Submit
Do While (IE.Busy)
WScript.Sleep 10
Loop
Dim someElement
Set someElement = IE.document.getElementByID("someElement")
If Len(someElement.innerText) > 0 Then
MsgBox "logged in"
End If
有一对夫妇的事情可以做,
- 如果网站返回像一个错误消息“登录失败”或“密码错误”,你可以检查一下身体的特定文本
If inStr(lcase(IE.document.body.innertext), "bad login") then
'Do error checking here
End If
- 如果一旦你的标题标签更改登录,您还可以检查是否存在以验证您在被记录。