一、检查元素表达式是否正确
1. 动态id定位不到元素
driver.find_element_by_id("user_0_32391").click()
如上面id后面是一串随机数,再次打开网页时会改变,此时无法通过id准确定位元素
2. 表达式错误
这是因为使用css和xpath定位,需要遵守对应的语法规则,没有按照规则来写
推荐使用的元素定位方式先后顺序:id、name、css规则、xpaht规则
css和xpath语法,已整理好,双手奉上
css定位元素选择器可以参考:
https://mp.weixin.qq.com/s/nNJO2H8cdunPZmFyJaRfEQ
xpath定位规则可以参考:
https://mp.weixin.qq.com/s/Ne25I-RqX9wRAmMh-vrhTg
二、考虑元素是否需要等待
第一次访问/点击过快,导致页面元素还没有加载出来,造成找不到元素的情况出现。
解决办法: 使用元素等待,解决这类问题。元素等待有:强制等待、显示等待 和 隐式等待三种方式。
元素等待三种方式优缺点、使用场景,已经整理好,双手奉上
https://mp.weixin.qq.com/s/4c-DfvlEhBqXZphic5tvHw
1. 强制等待 (time.sleep(5)):
2. 显示等待 (WebDriverWait)
3. 隐式等待 (driver.