Selenium常用操作——iframe框架切换

iframe是html一种常用技术,在一个页面中嵌套另一个页面。selenium默认访问不了frame中的内容,这时需要进行切换。

目录

一.问题出现

二.切换iframe框架的方法

2.1 根据id切换

2.2 根据xpath切换


本文以网站为例。

一.问题出现

按逻辑编写代码

"""iframe框架切换"""

from selenium import webdriver

url = 'https://qzone.qq.com/'

# 创建浏览器对象
driver = webdriver.Chrome()
driver.get(url)
# 登录
login = driver.find_element_by_id('switcher_plogin').click()
# 账号
accountText = driver.find_element_by_id('u').click()
# 密码
accounntPasswd = driver.find_element_by_id('p').click()
# 登录按钮
loginButton = driver.find_element_by_id('login_button').click()

运行报错

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="switcher_plogin"]"}

二.切换iframe框架的方法

2.1 根据id切换

# 切换iframe框架

driver.switch_to.frame('login_frame')

执行成功,成功跳转。

2.2 根据xpath切换

# 切换iframe框架

el_path = driver.find_element_by_xpath('//*[@id="login_frame"]')
driver.switch_to.frame(el_path)

执行结果同上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值