python 2.7 - Selenium需要30秒才能意识到元素ID不存在。我该怎么办?



我正在使用Selenium来抓取/解析一个糟糕的网站(如果它不糟糕,我可能不会使用Selenium,是的,尊重机器人.txt)。

我正在使用 find_element_by_id() 从未知大小的表中读取一组链接,带有连续元素 ID。我赶NoSuchElementException告诉我,我在桌子的末尾,没有其他元素可以拾取。

这会顺利地遍历存在的元素,但是当我请求不存在的元素时,大约需要 30 秒才能抛出错误,该元素告诉我我在表的末尾。

该文件不是那么大 - 来自DOM Inspector的html转储提供了一个81kb的文件。表中的最后一个链接(Selenium快速找到)是文件的7/8s,因此(假设Selenium按顺序解析)文件大小本身似乎并不能解释这一点。

我可以加速查找缺失元素的失败吗?或者有没有一种更优雅的方式来知道我在表格的最后一行有内容?

您可能希望使用 css 选择器来执行此操作。

driver.findElements( By.cssSelector( '[id^=id_name]' ) )

最新更新