我试图从网站的表中解析每个元素,但是,该表是data-reactid的引用,问题是如何使用.Document.getElementsByXXX来解析每个元素?
'VBA to Get Table Data
tblNameArr = Array(Worksheets("Sheet1").Cells(2, 4), Worksheets("Sheet1").Cells(3, 4), Worksheets("Sheet1").Cells(4, 4), Worksheets("Sheet1").Cells(5, 4))
tblStartRow = 6
Set elemCollection = IE.Document.getElementsByTagName("TABLE")
For t = 0 To elemCollection.Length - 1
For r = 0 To (elemCollection(t).Rows.Length - 1)
For c = 0 To (elemCollection(t).Rows(r).Cells.Length - 1)
ActiveSheet.Cells(r + tblStartRow, c + 1) = elemCollection(t).Rows(r).Cells(c).innerText
Next c
Next r
ActiveSheet.Cells(r + tblStartRow + 2, 1) = tblNameArr(t)
tblStartRow = tblStartRow + r + 4
Next t
我需要解析的网站链接:
答案 0 :(得分:0)
您可以使用.fin-table
的CSS选择器。 “。”表示className。通过document
的{{3}}方法应用。
IE.Document.querySelector(".fin-table")
它返回一个可以确定的节点,因为这是该类名称的第一个/唯一。
答案 1 :(得分:0)
看起来该表的类名称为"fin-table"
,它是该页面上唯一具有该类名称的表。因此,您可以使用以下表格引用该表格:
IE.Document.getElementsByClassName("fin-table")(0)
@Domonic的回答从注释复制到此处