Selenium定位不到元素
报错:selenium.common.exceptions.NoSuchElementException
原代码:
#coding:utf-8 from selenium import webdriver driver = webdriver.Chrome() driver.get("http://mail.163.com/") driver.implicitly_wait(30) #切换iframe driver.switch_to_frame("x-URS-iframe") #登陆邮箱 driver.find_element_by_name("email").send_keys("xxx") driver.find_element_by_name("password").send_keys("xxx")
错误原因:
1、Frame/Iframe原因定位不到元素
163登陆页面的登陆框的iframe的id为:
x-URS-iframe
解决方法:
#先定位到iframe
element = find_element_by_id("x-URS-iframe")
#再将定位对象传给switch_to_frame()方法
driver.switch_to_frame(element)