目标:
登录网页
并将 html 保存到文件中以供稍后解析。
页面上的 html 只是用户列表以及他们登录和注销的时间。
当您加载网页时,会弹出一个 JavaScript 框并要求输入登录信息
我可以用 SendKeys 填充它,但我真的想在不弹出窗口的情况下执行此操作
Set IE = CreateObject("InternetExplorer.Application")
set WshShell = CreateObject("WScript.Shell")
IE.Visible = False ' doesn't set IE page as invisible?????
IE.Navigate "https://mysite/site/console/client-log.jsp"
'how do i fill in the box ???
我建议使用类似的东西Fiddler识别实际登录的请求,然后在XMLHttp请求.
url = "..."
filename = "..."
Set req = CreateObject("MSXML2.XMLHTTP.6.0")
req.open "POST", url, False
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send "field1=foo&field2=bar&..."
Set fso = CreateObject("Scripting.FileSystemObject")
fso.OpenTextFile(filename, 2, True).WriteLine req.responseText
如果响应是 UTF-8 编码的,您可能需要使用ADODB.Stream用于保存内容的对象。
Set stream = CreateObject("ADODB.Stream")
stream.Open
stream.Type = 2 'text
stream.Position = 0
stream.Charset = "utf-8"
stream.WriteText req.responseText
stream.SaveToFile filename, 2
stream.Close
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)