当前位置: 首页 > news >正文

Python + Selenium —— 网页元素定位之class name定位!

class 属性可以为元素应用一个或者多个 CSS 样式类。
利用此属性可以与指定的 CSS 样式类关联起来,以此达到设置元素样式的功能。

可以这样理解,比如一个页面上的所有按钮,都想做成同样的样式,那么是不是要在每个按钮上写同样的 css 样式呢?

那能不能在 css 文件中,定义好一种样式,然后应用到每个按钮上。要想使用这个样式的按钮,直接在 class 属性中加上这个样式的类名就可以了。

按照上面的说法,class 属性表示一类的样式,应用在多个元素上,那么唯一性就要注意了。

看下面这个 span 元素,其中class="bg s_ipt_wr quickdelete-wrap",注意一下其中的空格,空格在这里的作用是分割多个类名的。这个 class 属性有两个空格,那么的代表这个 class 属性中包含了 3 个类名。

<span id="s_kw_wrap" class="bg s_ipt_wr quickdelete-wrap"></span>

使用 WebDriver 中的 class_name 定位方式的话,就只能使用其中一个。

driver.find_element_by_class_name("bg")` ✅
driver.find_element_by_class_name("bg s_ipt_wr quickdelete-wrap")`  ❌

对 class_name 的唯一性验证,同样在 console 中借助 JavaScript 代码:

document.getElementsByClassName("bg")

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:自动化测试老司机 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

http://www.lryc.cn/news/307534.html

相关文章:

  • matlab simulink变压器温度仿真
  • 设计模式七:责任链模式
  • Git,GitHub与GitLab分别是什么?有什么关系和区别?
  • 【Spring连载】使用Spring Data访问 MongoDB----Template API 查询Documents
  • git describe
  • React Switch用法及手写Switch实现
  • PowerShell执行策略:确保脚本安全执行的关键
  • LeetCode 热题 100 | 图论(上)
  • 跟着cherno手搓游戏引擎【25】封装2DRenderer,封装shader传参,自定义Texture
  • 多个值时 if [ -z 报错 binary operator expected
  • 如何使用ChatGPT创建一份优质简历
  • k8s(6)
  • 自动驾驶框架:自动驾驶汽车定位-感知-规划-决策-控制概述,按照我的架构图理解:决策决定的是速度,规划决定的是路径(架构理解推荐)
  • Gemma
  • 淘宝关键词搜索API、搜索商品接口、商品价格监控
  • vue实现水印功能
  • 记录一下我的Ruby On Rails的systemd服务脚本
  • 【计算机网络】传输层——TCP和UDP详解
  • stm32和嵌入式linux可以同步学习吗?
  • maven--->maven中的<properties>属性有什么作用?
  • android 网络请求总结
  • 用 Python 自动化处理无聊的事情
  • 稀疏计算、彩票假说、MoE、SparseGPT
  • Git Windows安装教程
  • iOS高级理论:Runtime应用
  • php判断和过滤get或者post的html标签,防止跨站点脚本(XSS),链接注入,框架注入等攻击
  • PySide6实现课堂点名程序
  • 瑞_Redis_Redis命令
  • js 算法题 在数组中找出和为目标值 target 的那 两个 整数,并返回它们的数组下标
  • 基于springboot接口的编写