Selenium教程__使用switch_to.frame处理网页框架切换(13)

这篇具有很好参考价值的文章主要介绍了Selenium教程__使用switch_to.frame处理网页框架切换(13)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

与在新窗口打开一个网页后需要切换窗口才能定位元素一样,在iframe标签中的元素也不能直接定位,需要切换到对应的iframe框架中才能进行元素定位。

完成网页框架切换操作需要用selenium中的两个方法

  • driver.switch_to.frame(frame_reference):切换到网页框架内,frame_reference为框架元素
  • driver.switch_to.default_content():退出网页框架

下面以网易邮箱(https://www.126.com/)演示网页的框架切换

import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.maximize_window()

driver.get("https://www.126.com")
time.sleep(3)

# 直接定位账户输入框
try:
    driver.find_element_by_name("email")
except Exception as e:
    print("无法在框架外定位框架内的元素")

# 定位iframe
fr = driver.find_element_by_tag_name("iframe")

# 切换iframe
driver.switch_to.frame(fr)

# 账户框内输入test
driver.find_element_by_name("email").send_keys("test")
time.sleep(1)

# 定位框架外元素
try:
    driver.find_element_by_xpath('/html/body/div[1]/div[1]/div')
except Exception as e:
    print("无法在框架内定位框架外的元素")

# 切换至iframe框架内,如果要操作框架外的元素需要退出iframe框架
driver.switch_to.default_content()

el = driver.find_element_by_xpath('/html/body/div[1]/div[1]/div')
print(el)

time.sleep(2)
driver.quit()

执行结果

selenium switch_to.frame,软件测试,自动化测试,selenium,chrome,软件测试,自动化测试,自动化测试框架


 事必有法,然后有成- 最后祝大家早日达到测试的天花板!


selenium switch_to.frame,软件测试,自动化测试,selenium,chrome,软件测试,自动化测试,自动化测试框架


以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以留言【777】直接拿走就好了文章来源地址https://www.toymoban.com/news/detail-739835.html

到了这里,关于Selenium教程__使用switch_to.frame处理网页框架切换(13)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • selenium-多窗口和frame处理

    1.切换窗口 适用场景:点击按钮后,重新打开一个窗口,想要在新的窗口定位操作,就需要切换窗口 原理:获取窗口的唯一标识就是句柄,获取到句柄,就可以切换到对应的窗口了 处理方法: 获取到当前的窗口柄(driver.current_window_handle) 获取到所有的窗柄 (driver.window_handles

    2024年02月16日
    浏览(45)
  • python-selenium-框架定位的处理frame

    Frame框架是Html框架结构中一种布局格式,共有三种形式:frameset、frame、iframe frame是整个页面的框架,iframe是内嵌的网页元素,也可以说是内嵌的框架 页面比较复杂,页面套页面,定位第几层窗口,找元素时,要先看元素在哪个框架,找到框架在定位元素。 框架也是某一个具

    2024年02月11日
    浏览(36)
  • python selenium playwright库使用教程 破解网页防止开发者模式 截取数据请求 隐藏chrome

    下载 chromedriver的版本一定要与Chrome的版本一致,不然就不起作用。 有两个下载地址: 1、 http://chromedriver.storage.googleapis.com/index.html 2、 CNPM Binaries Mirror 当然,你首先需要查看你的Chrome版本,在浏览器中输入chrome://version/  放chromedriver在chrome安装目录  默认目录一般为:C:Pro

    2023年04月25日
    浏览(48)
  • Selenium教程__使用Select类对象处理下拉框(15)

    select标签的下拉框可以使用selenium的 Select模拟下拉框选择操作。 Select需要导入才能使用,导入路径如下 下面以hao123(https://www.hao123.com) 演示下拉框操作  演示代码如下 -事必有法,然后有成-  最后祝大家早日达到测试的天花板!   以下是我收集到的比较好的学习教程资源,

    2024年02月13日
    浏览(41)
  • Selenium教程04:鼠标+键盘网页的模拟操作

    在webdriver 中,鼠标操作都封装在ActionChains类中,使用的时候需要导入这个包。 ActionChains方法列表如下: 1.单击左键+单击右键+左键双击的示例用法。 2.模拟鼠标拖动操作,该操作有两个必要参数,source:鼠标拖动的元素,target:鼠标拖至并释放的目标元素。 3.move_to_element()鼠

    2024年02月03日
    浏览(47)
  • C++中使用 switch-case 进行条件处理

    switch-case 让您能够将特定表达式与一系列常量进行比较,并根据表达式的值时执行不同的操作。在这种结构中,经常会使用 C++新增的 switch、 case、 default 和 break。 switch-case 结构的语法如下: 上述代码计算 expression 的值,并将其与每个 case 标签进行比较。每个 case 标签

    2024年02月10日
    浏览(39)
  • selenium入门超详细教程——网页自动化操作

    Selenium是广泛使用的模拟浏览器运行的库,它是一个用于Web应用程序测试的工具。 Selenium测试直接运行在浏览器中,就像真正的用户在操作一样,并且支持大多数现代 Web 浏览器。下面就进入正式的学习阶段。 激活虚拟环境 通过pip安装 针对不同的浏览器,需要安装不同的驱动

    2024年02月03日
    浏览(103)
  • selenium切换frame

    Frameset:可以直接按照正常元素定位 Frame:需要把驱动切换到Frame内再进行操作 IFrame:需要把驱动切换到Frame内再进行操作 frame切换原理总结: 针对同一层级的frame,如果要进行切换的话,需要切回到默认的首页,不能同级子页之间切换 针对所要进入的frame,有多少个层级,就

    2024年02月11日
    浏览(41)
  • selenium frame切换

    说明:本篇博客基于selenium 4.1.0 场景:页面存在frame、iframe嵌套结构。frame是html中的一种标签,可在一个页面中拼接多个网页 问题: selenium不能直接定位和操作处于frame、iframe内的元素 解决:使用selenium的frame切换功能,切换到frame内后再进行操作 更多技术文章

    2024年02月10日
    浏览(46)
  • Django:六、使用iframe标签内嵌页面报错;拒绝了我们的连接请求;because it set ‘X-Frame-Options‘ to ‘deny‘.

    使用标签内嵌页面时报错: 127.0.0.1 拒绝了我们的连接请求。 查看错误代码,发现: Refused to display \\\'http://127.0.0.1:8000/\\\' in a frame because it set \\\'X-Frame-Options\\\' to \\\'deny\\\'. 由于x-frame-options设置了deny属性,导致了iframe失效,x-frame-options响应头是用来给浏览器设置允许一个页面可否在fra

    2024年02月03日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包