我正在尝试从网站上获取实时数据到我的Excel电子表格中。唯一的问题是当我通过Excel中的获取数据访问网页时,表格无法识别。我只能导入整个页面,即便如此,它也无法获得我需要的数据。如果提供了Url,我想运行一个宏来获取数据,因为有太多的页面只能手动完成。
我试图导入的数据是不同博彩公司的比较,这是一个例子https://www.oddschecker.com/tennis/kaitlyn-christian-sabrina-santamaria-v-tatjana-maria-heather-watson/winner
或者这个网站https://easyodds.com/tennis/atp/acapulco-mexico/928015/match-result任何一个都可以工作
我真的很感激对此的一些见解。任何人都可以帮忙!
为什么你的解决方案不适合我,这真的很奇怪:
好。这是第一个链接的解决方案。
我可以整理一下输出,但它会让你开始。
选中活动表并将引用添加到MS XML和MS HTML Library。
参考
码
Option Explicit
Sub test4()
Dim html As New HTMLDocument, http As New XMLHTTP60
With http
.Open "GET", "https://www.oddschecker.com/tennis/kaitlyn-christian-sabrina-santamaria-v-tatjana-maria-heather-watson/winner", False
.Send
html.body.innerHTML = .ResponseText
End With
Dim allRowOfData As Object
Set allRowOfData = html.getElementsByClassName("at-12 standard-list")(0)
Dim r As Long, c As Long
Dim curHTMLRow As Object
Dim counter As Long
counter = 1
For r = 0 To allRowOfData.Rows.Length - 1
Set curHTMLRow = allRowOfData.Rows(r)
Dim tblCell As HTMLTableCell
For Each tblCell In curHTMLRow.Cells
If Not tblCell.innerText = "1" And Not tblCell.innerText = "2" And Len(tblCell.innerText) > 0 Then
ActiveSheet.Range("A" & counter).Value = Application.WorksheetFunction.Substitute(tblCell.innerText, "/", " over ")
counter = counter + 1
End If
Next tblCell
Next r
End Sub
结果: