【发布时间】:2021-09-27 14:46:37
【问题描述】:
我正在尝试在 VBA 上使用 selenium 获取数据。我想先单击一个单选框以到达所需的页面。
以下代码导致“索引超出范围”错误,因为没有符合条件的元素(当我执行 driver.FindElements(by.ID("DATAINI")) 时,它显示 0)。
Dim driver As New webdriver
driver.Start "ie"
driver.get fileLocation 'At this point, the website is properly opened.
Application.Wait Now + TimeValue("00:00:20")
Dim by As New by
With driver
.SwitchToFrame .FindElementByTag("iframe")
.FindElements(by.ID("DATAINI"))(0).Click
End With
【问题讨论】:
-
嗨。你试过
FindElement吗?另外,您是否检查过您已切换到正确的 iframe?请问可以提供网址吗?你能不能简单地将driver.get转换为我们在上图中看到的src值?请通过edit 使用sn-p 工具插入html,我们可以复制粘贴,而不是图像。我也没有在上图中看到那个 ID(但我刚刚醒来)。 -
感谢@QHarr,网址如下:
我尝试了 driver.SwitchToFrame,但没有成功。我不熟悉网络抓取,但无论如何我都必须这样做。
标签: css vba selenium web-scraping iframe