iva*_*lan 3 python selenium web-scraping
所以我正在使用Selenium和Python进行一些网络抓取,我遇到了问题.我点击"下一步"按钮移动到某个网站的下一页,但是当我到达最后一页时,我需要停止点击它.现在,我这样做的想法就是在try/except语句中使用some_element.click()并等到它给我一个错误,而按钮不再可点击.看来,.click()不会发出任何类型的信号,当按钮无法点击并且不发出任何真或假信号时,它不会抛出错误.
我尝试使用的代码段:
while True:
try:
button = driver.find_element_by_class_name('Next_button')
button.click()
except:
break
Run Code Online (Sandbox Code Playgroud)
还有其他方法吗?谢谢和欢呼.
在不了解您的示例目标的情况下,可以说的最小值是可点击属性具有'href'属性.
您可以使用get_attribute元素的属性:
button = driver.find_element_by_class_name('Next_button')
href_data = button.get_attribute('href')
if href_data is None:
is_clickable = False
Run Code Online (Sandbox Code Playgroud)
获取元素的给定属性或属性.
此方法将首先尝试返回具有给定名称的属性的值.如果不存在具有该名称的属性,则返回具有相同名称的属性的值.如果没有具有该名称的属性,则返回None.
被视为真实的值,即等于"真"或"假",将作为布尔值返回.所有其他非None值都以字符串形式返回.对于不存在的属性或属性,返回None.
更多关于使用 get_attribute
你也可以尝试is_displayed或is_enabled
| 归档时间: |
|
| 查看次数: |
4598 次 |
| 最近记录: |