1.什么是iframe:HTML中嵌套的HTML
2.如何判断操作的元素在iframe中
2.1.当使用正确的元素定位方式无法定位到元素时
2.2.iframe使用场景:
登录输入框
富文本(可以编辑文字的输入框)
后台管理表单
3.找iframe标签
4.进入iframe标签
driver.switch_to.frame(参数)
参数:
1.当iframe标签有固定的id/name属性值的时候,参数=id/name
2.当iframe标签没有id/name属性或id/name属性不固定,参数=定位到的iframe元素
3.当明确知道iframe索引值时,参数=索引值,索引从0开始
5.操作iframe
点击,输入
6.退出iframe
driver.switch_to.parent_frame()
driver.switch_to.default_content()
案例:
from selenium import webdriver
from time import sleep
import os
driver = webdriver.Chrome()
url = "file:///" + os.path.abspath("../../练习页面/注册实例.html")
driver.get(url)
sleep(2)
driver.find_element_by_css_selector("#user").send_keys("root")
sleep(2)
driver.switch_to.frame("idframe1")
driver.find_element_by_css_selector("#passwordA").send_keys("123456")
sleep(2)
driver.switch_to.parent_frame()
driver.find_element_by_css_selector("#tel").send_keys("789456")
sleep(2)
driver.switch_to.frame("myframe2")
driver.find_element_by_css_selector("#emailB").send_keys("[email protected]")
sleep(2)
driver.switch_to.parent_frame()
sleep(2)
driver.find_element_by_css_selector("button[title*='加入会员']").click()
driver.quit()