1

我想从这个网页获取一些信息到 Excel 表中:http ://www.livescore.in/

我的代码如下所示:

Dim page1 As MSXML2.XMLHTTP60
Dim html As MSHTML.HTMLDocument
Dim myDiv As Object
Set page1 = New MSXML2.XMLHTTP60
Set html = New MSHTML.HTMLDocument

page1.Open "GET", "http://www.livescore.in", False
page1.send

Do Until page1.readyState = 4 And page1.Status = 200
    DoEvents
Loop
html.body.innerHTML = page1.responseText
Set myDiv = html.getElementById("fscon")
Debug.Print myDiv.innerText

我想在“fscon”div中的“fs”div中工作这个脚本的结果是“Loading ...”

我知道问题出在哪里:当基本页面加载时,一些 javascript 会填满“fscon”div。我的脚本只看到基本页面(没有数据数学)

我的问题是如何等到整个页面加载完成?

谢谢

更新:此代码正在运行。它使用 IE 对象,我将测试从页面扫描所有匹配项的速度。

Dim ieApp As InternetExplorer
Dim ieDoc As Object
Set ieApp = New InternetExplorer
ieApp.Visible = False
ieApp.navigate "http://www.livescore.in"

Do While ieApp.Busy: DoEvents: Loop
Do Until ieApp.readyState = READYSTATE_COMPLETE: DoEvents: Loop

Set ieDoc = ieApp.document
Debug.Print ieDoc.all.Item("fscon").innerText

Set ieDoc = Nothing
ieApp.Quit
Set ieApp = Nothing
4

0 回答 0