VBScript:从网页下载JSON文件并将内容读取到变量
我正在尝试编写一个VB脚本,它将登录到一个安全的网站并下载一系列报告 以下内容让我进入了这个网站,但在登录之后,整个网站都是用javascript编写的VBScript:从网页下载JSON文件并将内容读取到变量,vbscript,Vbscript,我正在尝试编写一个VB脚本,它将登录到一个安全的网站并下载一系列报告 以下内容让我进入了这个网站,但在登录之后,整个网站都是用javascript编写的 Dim oIE Set oIE = CreateObject("InternetExplorer.Application") With oIE .Visible = True .Navigate SecureWebsite Do While .Busy Or Not .readyState = 4: WScript.Sl
Dim oIE
Set oIE = CreateObject("InternetExplorer.Application")
With oIE
.Visible = True
.Navigate SecureWebsite
Do While .Busy Or Not .readyState = 4: WScript.Sleep 100: Loop
Do Until .document.readyState = "complete": WScript.Sleep 100: Loop
Do While TypeName(.document.getElementById("username")) = "Null": WScript.Sleep 100: Loop
End With
Set Helem = oIE.document.getElementByID("username")
Helem.Value = "myusername"
Set Helem = oIE.document.getElementByID("password")
Helem.Value = "mypassword"
Call oIE.Document.all.loginForm.submit
我找到了一个链接,可以使用该链接的参数来搜索我需要的报告。当我点击链接时,InternetExplorer返回一个JSON文件,我可以打开/下载该文件。JSON文件包含一个报告ID,我可以在另一个链接中将其用作参数来下载所需的文件
是否有任何方法可以使用InternetExplorer对象将JSON文件的文本内容读入一个变量,以便我可以从中解析报告ID?我发现的所有示例都使用MSXML2.XMLHTTP对象,但这会将其与我在InternetExplorer对象中实现的登录断开 我最后在C#做了这件事。该网站有重定向和SSO,因此我无法获得直接的WebClient get/Post,但我通过使用WebBrowser对象登录,然后将cookie传递给HttpWebRequest对象,这是一个很好的指南:
这是否回答了您的问题?谢谢,但它使用的是MSXML2.XMLHTTP对象,它与我在InternetExplorer.Application对象中实现的身份验证没有连接。