Set xmlHTTP1 = CreateObject("Microsoft.XMLHTTP")
xmlHTTP1.Open "get", "https://chart.cp.360.cn/zst/getchartdata?lotId=255401&chartType=x5zh&spanType=0&span=300&r=0.4348563654548525#roll_132", True
xmlHTTP1.send
While xmlHTTP1.readyState <> 4
DoEvents
Wend
wstr1 = xmlHTTP1.responseText
Set xmlHTTP1 = Nothing
有时无法刷新,咋办?
如果你用的是Msxml2.XMLHTTP(Microsoft.XMLHTTP),可以换成Msxml2.ServerXMLHTTP试试。另外也可以试试每次请求完都销毁对象,下次请求前重新创建对象。
===========================
要实现网站数据的采集,首先要了解HTTP协议。
当我们在浏览器中输入网址,按下回车时,客户端会发送一个请求到服务器,服务器根据请求的内容返回数据到客户端,浏览器显示返回的结果。
当用编程的方法获取网站数据时,实际上就是模拟了以上的过程,客户端发送请求→服务器响应发回结果。
然后通过各种方式处理获得的结果,提取想要的数据。
本文介绍用WinHttpRequest对象进行网站数据采集的方法。
以下代码是最基础的获取网站数据的vba代码:
Sub QQ1722187970()
Dim oHtml As Object
Set oHtml = VBA.CreateObject("WinHttp.WinHttpRequest.5.1")
Dim sUrl As String
sUrl = "https://blog.csdn.net/tylm22733367/article/details/52596990"
With oHtml
.Open "GET", sUrl, False
.send
Debug.Print .ResponseText
End With
Set oHtml = Nothing