在VBA中使用Selenium的类型不匹配


Sub
Dim ChBrowser As Selenium.ChromeDriver
Set ChBrowser = New Selenium.ChromeDriver
Dim PeerComparisonTable As Selenium.WebElement
Dim PeerComparisonTableHeaderRow As Selenium.TableRow

(铬)

URL-https://www.screener.in/company/DIVISLAB/consolidated/

问题:如何引用头行peercomparison表?

标题行-如何引用这一行

Error: Type Mismatch

Set PeerComparisonTableHeaderRow = ChBrowser.FindElementsByTag("table")(1).FindElementsByTag("tr")(1)

[Internet Explorer] -'Rows'可用的方法。的解决方案是什么铬吗?

Set PeerComparisonTable = IE.getElementsByTagName("table")(1)
Set PeerComparisonTableHeaderRow = PeerComparisonTable.Rows(index)
End Sub

您必须将PeerComparisonTableHeaderRow对象从' tablelow '更改为'WebElement',并使用xPath查找:

(注意网址与你发布的不同)

Sub fnTestChrome()
Dim ChBrowser As Selenium.ChromeDriver
Dim PeerComparisonTable As Selenium.WebElement
Dim PeerComparisonTableHeaderRow As Selenium.WebElement

Set ChBrowser = New Selenium.ChromeDriver
ChBrowser.Start "chrome"
DoEvents
ChBrowser.Get "https://www.screener.in/company/DIVISLAB/consolidated/#peers"
DoEvents
Set PeerComparisonTableHeaderRow = ChBrowser.FindElementByXPath("/html/body/main/section[3]/div[1]")

MsgBox PeerComparisonTableHeaderRow.Text

End Sub