我正在尝试通过IE应用程序模拟与Google的交互,并通过DOM来获取我需要的类,一切都很好,踩着代码,但.Click
行动除外导致崩溃,但它没有做任何事情(页面无法导航) - 下面的HTML代码和屏幕截图:
Option Explicit
Private Sub Test_Automation()
Dim ie, doc, eInput, eButton, eButtons As Object
Dim sURL, sTest As String
Set ie = CreateObject("internetexplorer.application")
sURL = "https://www.google.co.uk/?gfe_rd=cr&ei=IpDvWK72LsjCaJCbjKAL&gws_rd=ssl"
sTest = "Test"
With ie
.Visible = True
.Navigate sURL
End With
Do While ie.Busy Or ie.readyState <> 4
DoEvents
Loop
Set doc = ie.document
Set eInput = doc.getElementByid("lst-ib")
Set eButtons = doc.getElementsByTagName("input")
eInput.Value = sTest
For Each eButton In eButtons
If (eButton.getattribute("name") = "btnK") Then
eButton.Click
Exit For
End If
Next
End Sub
任何关于我做错的建议都会很棒!
答案 0 :(得分:2)
您可以摆脱底部的For...Next
循环并将其替换为单击按钮:
doc.forms(0).submit
可以将0更改为其他数字(例如1或2)以单击其他按钮。如果页面上有多个可以单击的按钮,则只需要一些试验和错误就可以找出与您要点击的按钮匹配的数字。