selenium 「could not be scrolled into view」

學習selenium對話框處理出現錯誤web

a.py內容:app

from selenium import webdriver學習

import time
driver = webdriver.Firefox()
driver.get("http://www.baidu.com/")ui

time.sleep(3)
#點擊登陸連接
driver.find_element_by_name("tj_login").click()
#經過二次定位找到用戶名輸入框
div=driver.find_element_by_class_name("tang-content").find_element_by_name("userName")
div.send_keys("username")
#輸入登陸密碼
driver.find_element_by_name("password").send_keys("password")
#點擊登陸
driver.find_element_by_id("TANGRAM__PSP_10__submit").click()
driver.quit()spa

運行a.py的時候出現 ElementNotInteractableException: Message: Element <a class="lb" href="https://passport.baidu.com/v2/?login&tpl=mn&u=http%3A%2F%2Fwww.baidu.com%2F&sms=5" name="tj_login"> could not be scrolled into view 不能跳出對話框
經網上查找是由於不可見元素定位緣由,某些狀況元素的visibility爲hidden或者display屬性爲none,咱們在頁面看不到可是實際是存在頁面的一些元素,這時候用 is_displayed() 來判斷utf-8

改過a.py內容element

#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("http://www.baidu.com/")
#點擊登陸連接
time.sleep(3)
element0=driver.find_elements_by_name("tj_login")
for ele0 in element0:
    if ele0.is_displayed():
        ele0.click()
#經過二次定位找到用戶名輸入框
div=driver.find_element_by_class_name("tang-content").find_element_by_name("userName")
div.send_keys("username")
#輸入登陸密碼
driver.find_element_by_name("password").send_keys("password")
#點擊登陸
driver.find_element_by_id("TANGRAM__PSP_10__submit").click()
driver.quit()
get

相關文章
相關標籤/搜索