VBA XML V6.0如何使它等待页面加载?

我一直在拉我的头发,试图find这个答案,我似乎无法find任何有用的东西。

基本上,我是从一个网站,加载更多的项目,当你在网页上拉。 我希望我的代码在完成加载之后提取最终数据,但不知道如何使XML httprequest等待。

编辑:

Sub pullsomesite() Dim httpRequest As XMLHTTP Dim DataObj As New MSForms.DataObject Set httpRequest = New XMLHTTP Dim URL As String URL = "somesite" With httpRequest .Open "GET", URL, True .setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" .setRequestHeader "Content-Type", "application/x-www-form-urlencoded" Application.Wait Now + TimeValue("0:02:00") .send ' ... after the .send call finishes, you can check the server's response: End With While Not httpRequest.readyState = 4 '<---------- wait Wend If httpRequest.Status = 200 Then Application.Wait Now + TimeValue("0:00:30") Debug.Print httpRequest.responseText 'continue... End If 'Debug.Print httpRequest.Status 'Debug.Print httpRequest.readyState 'Debug.Print httpRequest.statusText DataObj.SetText httpRequest.responseText DataObj.PutInClipboard With Sheets("Sheet1") .Activate .Range("A1000000").End(xlUp).Offset(1, 0).Select .PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True End With End Sub 

任何帮助,将不胜感激!

截图

尝试等待响应的就绪状态和主体不包含单词“正在更新”:

 Option Explicit Sub pullSomeSite() Dim httpRequest As XMLHTTP Set httpRequest = New XMLHTTP Dim URL As String URL = "SomeSite" With httpRequest .Open "GET", URL, False .setRequestHeader "Content-Type", "application/x-www-form-urlencoded" .send End With With httpRequest While Not .ReadyState = 4 '<---------- wait Application.Wait Now + TimeValue("0:00:01") Wend If .Status = 200 Then While InStr(1, .responseText, "Updating", 0) > 0 '<---------- wait again Application.Wait Now + TimeValue("0:00:01") Wend Debug.Print .responseText 'continue... End If End With End Sub