如何在翻录网页时获取ajax加载的数据

如何在翻录网页时获取ajax加载的数据,ajax,asp-classic,serverxmlhttp,Ajax,Asp Classic,Serverxmlhttp,我目前正在一个经典的asp页面中使用此函数来获取网页的内容,提取一些数据并显示它 Function GetHTML(strURL) Dim objXMLHTTP Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP") objXMLHTTP.Open "GET", strURL, False objXMLHTTP.Send GetHTML = objXMLHTTP.responseText Set objXMLHTTP = Noth

我目前正在一个经典的asp页面中使用此函数来获取网页的内容,提取一些数据并显示它

Function GetHTML(strURL)
Dim objXMLHTTP
Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
objXMLHTTP.Open "GET", strURL, False
objXMLHTTP.Send
GetHTML = objXMLHTTP.responseText
Set objXMLHTTP = Nothing
End Function

不幸的是,由于越来越多的网站在加载标准HTML后使用ajax将数据加载到div中,因此我的函数无法从这些div中获取数据


如何在字符串中获取完整的页面?

您的代码看起来不错,但如果我们没有所有详细信息,就无法告诉您出了什么问题。什么“不”起作用?你有什么错误吗?您是否已将objXMLHTTP.responseText写入屏幕,结果显示为空白?你在呼叫哪种页面?在开发控制台中显示任何错误?“我的函数不从这些div获取数据”-一旦通过ajax调用页面,您只需获取服务器输出的呈现内容,您将无法通过jsp轻松获取任何加载的数据。您将需要一种功能更全面的抓取技术:一种运行包含脚本、下载链接或动态内容并进行渲染的技术。一个像Selenium这样的“无头”组件可以做到这一点,这取决于你的具体需求。示例页面:如果你在IE11(或Chrome或FireFox)中“查看源代码”,你将看不到几个div的内容。就像使用XMLHTTP组件一样。