明明定位没有问题,在浏览器查询元素也唯一,但死活无法执行,原因可能是:
1、没有切换frame
解决方案:
frame = driver.find_element(By.CSS_SELECTOR,'iframe[id="login_frame"]')
driver.swich_to.frame(frame)
然后在定位元素即可解决
2、多标签页,方法同理
current_handle = driver.current_window_handle
handles = driver.window_handles
for handle in handles:
driver.switch_to.window(handle)
time.sleep(1)
print(driver.title, driver.current_window_handle)
driver.close()
time.sleep(1)
3、页面元素没有加载完成
解决方案:设置隐形等待或显性等待解决
4、代码已经操作到,但页面尚未跳转到某一页
解决方案:设置sleep()强制等待