元素定位不到的几种解决办法python+selenium
1.元素没有加载出来。
可以使用隐式等待的方法让元素都加载完成。driver.implicitly_wait(10)
可以使用time的sellp方法,时间上可以做调整。time.sleep(2)
2.元素父节点有隐藏属性 style="display:none"
使用js将属性换成block
js = "document.getelEmentById('id').style.display='block'"
driver.execute_script(js)
3.新页面的元素
需要将页面转至新页面:
all_handles = driver.window_handles
now_handle = driver.current_window_handle
def new_page(all_handles,now_handle):# 切换到新页面
for handle in all_handles:
if handle != now_handle:
driver.switch_to_window(now_handle)