求教,关于获取网页提示信息~~
本帖最后由 Srsly 于 2016-8-31 23:34 编辑已另开一帖,编辑掉!!~ 我想获取图1里的红字内容。。。该怎么处理。
还望各位多指点!! 直接读取网页源码 回复 3# chamlien
_IEBodyReadHTML ( ByRef $oObject )
这个函数?
我之前用_IEBodyReadText ( ByRef $oObject )
没成功! 回复 4# Srsly
#include <IE.au3>
$oIE_Login =_IECreate("http://www.jinmei.com/Login.aspx","url")
$sUserName = _IEGetObjById($oIE_Login,"txtUserName")
_IEFormElementSetValue($sUserName,"UserName")
$sPassWord = _IEGetObjById($oIE_Login,"txtPassWord")
_IEFormElementSetValue($sPassWord,"pswd")
$BtnLogin = _IEGetObjById($oIE_Login,"btnLogin")
_IEAction($BtnLogin,"click")
Sleep(2000)
$Ele = _IEGetObjById($oIE_Login,"lblMsg")
MsgBox(0,"元素html",$Ele.innerHTML)
innerHTML - 节点(元素)的文本值 http://www.runoob.com/htmldom/htmldom-methods.html 回复 5# nmgwddj
感谢,等周一上班我测试一下!!
公司内网,现在测试不了。 顶,学习了,最近也在搞网页方面的事情! 回复 5# nmgwddj
另外请教下:网页上,点击一个“提交”button后,弹出来一个小窗口(窗口标题为:“来自网页的消息”)
我用如下方法点击不成功:$hWnd = WinWait("来自网页的消息")
WinActivate($hWnd)
ControlClick($hWnd,"","Button1")
;Send("{Enter}") 也没反映。 回复 8# Srsly
在点击前先执行一个进程去等待弹出的出现,因为弹出窗口后,程序已经阻塞了,04,05行是永远不会执行的,
因此要在01行前面运行一句:
Run(@AutoItExe & ' /AutoIt3ExecuteLine"Dim $s='''',$a=WinWait($s), $a=WinActivate($s)=WinWait($s), $a=WinActivate($s), $a=ControlClick($s, '''', '''')"') 回复 9# chamlien
感谢!!
周一上班我测试下。
我还以为挺简单个问题,没想到还那么复杂。
我完全都没往你说这个方向去想,一直以为我代码哪里出了问题呢!! 回复 5# nmgwddj
用你的这段代码试了,MsgBox输出内容仍然为空~~!!
是不是“”btnLogin“点击后,页面没刷新?仍然获取到的是点击之前的页面内容?~~
求解~~!! 回复 11# Srsly
有可能,你可以做一下延迟,或者等页面加载完毕再取数据。 回复 12# nmgwddj
延迟和_IELoadWait痘试过了!
不知道什么情况,愁死了! 回复 13# Srsly
使用前校验一下 $oIE 的对象是否有效,这个命令在浏览器 console 窗口敲一下看能不能取到。如果 console 都取不到证明方法用错了。 本帖最后由 Srsly 于 2016-8-28 18:54 编辑
回复 14# nmgwddj
console是能取到的。
手动打开网页,输入错误信息,让红字提示信息出现。
然后运行以下代码,能够得到正确结果。#include <IE.au3>
$WinHandle = WinGetHandle("")
$ConHandle = ControlGetHandle($WinHandle,"","Edit1")
$CurrenSite = _GUICtrlEdit_GetText($ConHandle)
$oIE_Login = _IEAttach($CurrenSite,"URL")
$Ele = _IEGetObjById($oIE_Login,"lblMsg")
MsgBox(0,"元素html",$Ele.innerHTML)用AU3自动输入登录信息,然后登录,就获取不到信息。
我真是¥%#!)#*...
后面几个页面也有这样的问题。
获取到的信息,总是上一个页面的信息,不是当前页面的。
比如说,这个页面上,得到的结果就是点击登录之前那个页面的信息。
页:
[1]
2