有的时候,需要切换到网页内嵌的网页去操作元素
主要方法:
(1)driver.switch_to.frame(frame):切换到内嵌的iframe上
(2)driver.switch_to.default_content():切换回默认主页面
# coding:utf-8
from selenium import webdriver
# 实例化一个Chrome浏览器驱动对象,,参数是chromdriver.exe的路径
driver = webdriver.Chrome(chromedriver.exe路径)
# 隐式等待
driver.implicitly_wait(5)
# 访问网站:自己写的一个HTML,内嵌了一个百度首页的网页
driver.get("xxx.html")
# 定位:iframe
frame1 = driver.find_element_by_id("iframe1")
# 切换到iframe1这个内嵌网页
driver.switch_to.frame(frame1)
# 定位:百度一下
driver.find_element_by_id("su").click()
# 切换回主页面
driver.switch_to.default_content()
# 定位主页面:P标签
pEle = driver.find_element_by_tag_name("p")
print(pEle.text)
# 退出浏览器
driver.quit()