web自动化之iframe操作

Posted 帅瓶子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web自动化之iframe操作相关的知识,希望对你有一定的参考价值。

from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time

driver = webdriver.Chrome()
driver.get("https://ke.qq.com/")
driver.maximize_window()
driver.find_element_by_xpath(//a[text()="登录"]).click()
# 选择账号类型
name = (By.XPATH,//a[text()="QQ登录"])
WebDriverWait(driver,20).until(EC.presence_of_element_located(name))
driver.find_element_by_xpath(//a[text()="QQ登录"]).click()
# 切换iframe需要传的参数,元祖类型,也可以是一个webelement 对象,也可以是iframe的name 或者di属性
ment = (By.XPATH,//iframe[@name="login_frame_qq"])
# 等待iframe出现,并切入进去
WebDriverWait(driver,20).until(EC.frame_to_be_available_and_switch_to_it(ment))
time.sleep(2)
# 定位元素
driver.find_element_by_xpath(//span[@class="img_out_focus"]).click()
# 退出iframe
driver.switch_to_default_content()

 

以上是关于web自动化之iframe操作的主要内容,如果未能解决你的问题,请参考以下文章

web自动化,如何实现frame表单切换?

Selenium中web三大切换之iframe窗口及Alert(弹窗)切换

python UI自动化之js操作

web自动化针对PO模式进行二次封装之 basepage

web安全之点击劫持

web自动化测试-D3-学习笔记之三(Selenium-Switch与SelectApi接口详解)