|
抓取网页,模拟click点击页码链接,页码形式为1,2,3,4,5,6,7,8,9,10,...用了几种方式,有时有效,有时无效。也不知是什么原因。
[mw_shl_code=actionscript3,true]Local $oIE = _IECreate("http://10.?.?.?/HBWebApp/HOLIDAYAPP/PAGES/OutList.aspx")
Local $oLinks = _IELinkGetCollection($oIE)
For $oLink In $oLinks
Local $sLinkText = _IEPropertyGet($oLink, "OuterText")
If $sLinkText = "2" Then
_IEAction($oLink, "click")
_IELinkClickByText($oIE, $sLinkText)
ExitLoop
EndIf
Next
[/mw_shl_code]
也不知是IE问题还是什么版本问题,_IEAction($oLink, "click")和_IELinkClickByText($oIE, $sLinkText),不好使。用msgbox测试If $sLinkText = "2" Then,能够弹出,但click不执行。
后来又用_IELinkClickByIndex ($oIE, 30),第2页链接index为30,随便模拟点击,也没有反应。
最后没有办法,用了最原始的模拟键盘点击才成功,先用TAB到指定链接让后模拟Ctrl+enter模拟点击。
[mw_shl_code=applescript,true]If $i < 11 Then
Send("{TAB " & 34 + $i & "}")
Else
If Mod($i,10)=0 Then
Send("{TAB " & 35 + $i-10*(Int($i/10)-1) & "}")
Else
Send("{TAB " & 35 + $i-10*(Int($i/10)) & "}")
EndIf
EndIf
Sleep(3000)
Send("^{ENTER}")
_IELoadWait($oIE)
Sleep(3000)[/mw_shl_code]
|
|