selenium定位class中含有某段文字的方法

<li data-testid="beast-core-pagination-prev" class="PGT_prev_5-88-0 PGT_disabled_5-88-0"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" data-testid="beast-core-icon-left" class="ICN_outerWrapper_5-88-0 ICN_svgIcon_5-88-0 " style="font-size: 12px;"><path d="M713.456 185.456c14.059-14.059 14.059-36.853 0-50.912-13.918-13.918-36.398-14.057-50.487-0.417l-0.425 0.417-352 352c-13.918 13.917-14.057 36.397-0.417 50.486l0.417 0.425 352 352c14.059 14.06 36.853 14.06 50.912 0 13.918-13.917 14.057-36.397 0.417-50.486l-0.417-0.425L386.912 512l326.544-326.544z"></path></svg></li>

PGT_next_5-88-0 PGT_disabled_5-88-0

匹配 class中含有 disabled 在selenium中如何定位元素

要在Selenium中定位那些class属性中包含"disabled"文本的元素,您可以使用CSS选择器或者XPath。考虑到您的需求,这里提供两种方法:

使用CSS选择器:

CSS选择器不直接支持搜索属性值中包含特定文本的功能,但您可以利用属性包含特定值的属性选择器(attribute\*=value)来间接实现。不过,由于class属性可能包含多个类名,这种方法可能匹配到不完全符合预期的元素。尽管如此,这是一个简单的尝试:

复制代码
elements = driver.find_elements(By.CSS_SELECTOR, "[class*='PGT_disabled']")

这段代码会找到所有class属性中任意位置包含"PGT_disabled"字符串的元素。

使用XPath:

XPath提供了更精确的文本匹配功能,您可以使用XPath的contains()函数来定位那些class属性中包含特定文本的元素。这对于您的需求更加合适:

复制代码
elements = driver.find_elements(By.XPATH, "//*[contains(@class, 'PGT_disabled')]")

<li data-testid="beast-core-pagination-next" class="PGT_next_5-88-0 PGT_disabled_5-88-0"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" data-testid="beast-core-icon-right" class="ICN_outerWrapper_5-88-0 ICN_svgIcon_5-88-0 " style="font-size: 12px;"><path d="M310.544 185.456c-14.059-14.059-14.059-36.853 0-50.912 13.918-13.918 36.398-14.057 50.487-0.417l0.425 0.417 352 352c13.918 13.917 14.057 36.397 0.417 50.486l-0.417 0.425-352 352c-14.059 14.06-36.853 14.06-50.912 0-13.918-13.917-14.057-36.397-0.417-50.486l0.417-0.425L637.088 512 310.544 185.456z"></path></svg></li> 结合上面的代码,使用组合定位,包括:data-testid="beast-core-pagination-next",应该如何写?

复制代码
element = driver.find_element(By.XPATH, "//li[@data-testid='beast-core-pagination-next'][contains(@class, 'PGT_disabled')]")

以上定位可行。

相关推荐
落魄大学生之流水线上谋生计1 天前
Selenium 入门到实战:用 Python 写出稳定的浏览器自动化
python·selenium·自动化
我的xiaodoujiao1 天前
Django 基础知识详细图文教程 13-Django 模型定义与使用 3
数据库·后端·python·测试工具·oracle·django
Felven3 天前
stress-ng 与 fio 性能测试工具使用指南
linux·测试工具·fio·stress-ng
H_unique3 天前
Chat2Excel:接口自动化测试
python·测试工具·自动化
Sarapines Programmer4 天前
【Wireshark】安装与使用指南
网络·测试工具·wireshark
念越4 天前
接口自动化测试从入门到实战:接口用例设计、Requests、Pytest、YAML、JSON Schema 与 Allure 报告
python·测试工具·自动化·json·pytest
ysu_03146 天前
Postman接口调试实战指南-从HTTP请求到环境变量-Collection与自动化测试
网络·网络协议·测试工具·http·api·postman·可用性测试
ZhangJun957 天前
从零写一个类鲁大师的硬件检测小工具,软件附上,可直接使用
windows·测试工具·电脑·笔记本电脑·硬件架构
测试员周周8 天前
【jev应用到测试】94 条 UI 报错交给 Jev,三档判对 85.1%,开单闸门定在 0.6
人工智能·python·测试工具·单元测试·测试用例
xfilm埃利测量8 天前
从方阻到电阻率:四探针法如何把薄膜“测明白“
功能测试·测试工具·四探针·薄膜电阻测量