【发布时间】:2017-08-20 13:41:58
【问题描述】:
我正在努力创建一个while-loop,只要网站上存在特定元素,该循环就会运行。我目前拥有的绝不是我引以为豪的解决方案,但它确实有效。但是,我非常感谢有关如何更改以下内容的一些建议:
def spider():
url = 'https://stackoverflow.com/questions/ask'
driver.get()
while True:
try:
unique_element = driver.find_element_by_class_name("uniqueclass")
do_something()
except NoSuchElementException:
print_data_to_file(entries)
break
do_something_else()
如您所见,我在while-loop 中做的第一件事是检查一个唯一元素,该元素仅存在于包含我感兴趣的数据的页面上。因此,当我到达没有这个的页面时信息,我会得到NoSuchElementException 然后休息。
如何在不创建while True 的情况下实现上述目标?
【问题讨论】:
标签: python html selenium selenium-webdriver