多表单切换

 

 

通过switch_to.frame()方法切换表单

 

from time import sleep
from selenium import webdriver
driver = webdriver.Chrome(
driver.get("http://www.126.com")sleep(2)
login_frame =
driver.find_element_by_css_selector ('iframe[id^="x-URS-iframe"] ')

driver.switch_to.frame (login_frame)
driver.find_element_by_name ("email").send_keys ("username")

driver.find_element_by_name ("password").send_keys ("password")

driver.find_element_by_id("dologin").click(
driver.switch_to.default_content()
driver.quitO
switch_to.frame()默认可以直接对表单的id属性或name属性传参,因而可以定位元素的对象。在这个例子中,表单的id属性后半部分的数字(1553484417298.5217)是随机变化的,在 CSS定位方法中,可以通过“=”匹配id属性为以“x-URS-iframe”开头的元素。
最后,通过switch_to.default_contentO回到最外层的页面。

 

posted @ 2020-10-31 13:22  Catonce  阅读(45)  评论(0编辑  收藏  举报