首页 > 其他分享 >selenium无法获取标签内容

selenium无法获取标签内容

时间:2023-01-01 06:55:05浏览次数:35  
标签:标签 frame driver find 获取 switch element id selenium

<html lang="en">
<head>
    <title>FrameTest</title>
</head>
<body>
<iframe src="a.html" id="frame1" name="myframe"></iframe>
<p>我歌且谣</p>
</body> </html>

想要获取iframe内内容, 必须进入iframe,否则在无法获取

from selenium import webdriver

driver = webdriver.Chrome()
driver.switch_to.frame(0)  # 1.用frame的index来定位,第一个是0
driver.switch_to.frame("frame1")  # 2.用id来定位
driver.switch_to.frame("myframe")  # 3.用name来定位
driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))  # 4.用WebElement对象来定位


from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()
driver.get("xxxxx")
driver.maximize_window()
sleep(3)
driver.switch_to.frame("loginIframe")
# 定位到 frame 页面。id=loginIframe
driver.find_element_by_id("username").clear()
driver.find_element_by_id("username").send_keys("123")
driver.find_element_by_id("password").send_keys("123456")
driver.find_element_by_id("btnLogin").click()
driver.quit()

在进入iframe之后,若想获取p标签内容,必须先执行退出语句。

driver.switch_to.default_content()

 

标签:标签,frame,driver,find,获取,switch,element,id,selenium
From: https://www.cnblogs.com/wgqy/p/17017708.html

相关文章

  • Selenium42-版本管理
    版本管理为什么要对代码做版本管理多人协作历史版本回溯:回滚到特定阶段,恢复误删除的文件什么是版本管理版本管理就是管理更新的历史记录版本管理发展历史在Git出现以前,人......
  • sqlserver 获取汉字拼音的首字母(大写)函数
    USE[test]GO/******对象:UserDefinedFunction[dbo].[GetFirstChar]脚本日期:02/22/201916:39:06******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONG......
  • mp3 批量修改文件名和音乐标签
    批量修改文件名首选BulkRenameUtility,可以快速插入修改文件名,并且后面有预览,确定没有问题就点击下方的rename即可。音乐标签MusicTag,点击工具栏靠后的文件名相关,就......
  • 搭建web自动化环境,selenium-Java+火狐浏览器+idea
    1、准备浏览器,火狐/谷歌等2、下载驱动插件火狐插件链接:https://github.com/mozilla/geckodriver/releases谷歌插件:https://registry.npmmirror.com/binary.html?path=ch......
  • Selenium64-pytest.ini
    配置文件pytest.inipytest.ini是什么?pytest.ini是pytest的主配置文件,可以改变pytest的默认行为,有很多可配置的选项。在执行文件根目录配置pytest.ini文件。日志的......
  • Selenium65-Allure报告
    Allure简介Allure是一款轻量级并且非常灵活的开源测试报告框架。它支持绝大多数测试框架,例如TestNG、Pytest、JUint等。它简单易用,易于集成。官网:http://allure......
  • JS获取对象的所有属性(自身/原型属性、可枚举/不可枚举)
    vars1=Symbol('s1')vars2=Symbol('s2')varobj={a:'a1',//自身属性可枚举b:'b1',//自身属性可枚举[s1]:'s1s1s1s1',//自身属性Symbo......
  • Selenium63-yaml文件
    提升维护性策略定位和操作都在page层,不方便维护方案:把定位从page层分离到element层。使用yaml作为element层描述元素定位条件的文件格式。YAML格式YAML(/ˈjæməl/......
  • Selenium62-使用POM的测试用例
    添加赛区脚本test_后台_双创_基础设置_赛区管理_添加赛区_case_v7.py导入各个网页对象改造to_division_manager导入各个网页对象导入各个网页对象:frompage.......
  • Selenium61-POM的Page基类
    POM是什么页面对象模型(POM)是一种设计模式,用来管理维护一组web元素集的对象库。在POM下,应用程序的每一个页面都有一个对应的pageclass每一个pageclass维护着该web......