我试图从网页上抓取赔率数据,到目前为止,我的脚本确实为我提供了我需要的数据,但却非常混乱。
我期待获得3排(博彩公司,玩家1赔率,玩家2赔率)
K Anderson / 2.62 2.62 2.75 2.6 2.75 2.53 2.63 2.63 2.6 2.7 2.63 2.7 2.63 2.63 2.7 2.75 2.6 2.62 2.63 2.65 2.7 2.63 2.62 2.88 2.88 2.84
它以垂直的方式获取数据,而在网页中它是水平的,我得到一张额外的工作表,只是空的,所以我试图摆脱它
这是我的代码:
Sub GetOddsValues()
Dim XMLPage As New MSXML2.XMLHTTP60
Dim HTMLDoc As New MSHTML.HTMLDocument
XMLPage.Open "GET", "https://easyodds.com/tennis/atp/acapulco-mexico/928015/match-result", False
XMLPage.send
HTMLDoc.body.innerHTML = XMLPage.responseText
Dim HTMLTable As MSHTML.IHTMLElement
Dim HTMLTables As MSHTML.IHTMLElementCollection
Dim HTMLRow As MSHTML.IHTMLElement
Dim HTMLCell As MSHTML.IHTMLElement
Dim RowNum As Long, ColNum As Integer
Set HTMLTables = HTMLPage.getElementsByTagName("table")
For Each HTMLTable In HTMLTables
Worksheets.Add
Range("A1").Value = HTMLTable.className
Range("B1").Value = Now
RowNum = 2
For Each HTMLRow In HTMLTable.getElementsByTagName("td")
ColNum = 1
For Each HTMLCell In HTMLRow.Children
Cells(RowNum, ColNum) = HTMLCell.innerText
ColNum = ColNum + 1
Next HTMLCell
RowNum = RowNum + 1
Next HTMLRow
Next HTMLTable
End Sub
我注意到在页面源代码中的每个单元格中,都有一个小数名称的等级名称" oddsValue"但每当我尝试修改我的代码以选择它时,我得到运行时错误438.我不确定我在那里做错了什么。
有人可以帮忙整理一下,让数据真正可读!