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')]")

以上定位可行。

相关推荐
卓码软件测评5 小时前
【第三方高校课题软件确认测试:LoadRunner与JMeter-企业级性能测试工具选型深度对比】
测试工具·jmeter·性能优化·单元测试·测试用例
卓码软件测评5 小时前
【第三方软件测试测评机构:使用LoadRunner测试HTTPS/SSL协议应用的配置和证书处理 】
网络协议·测试工具·https·测试用例·ssl
不会代码的小测试8 小时前
UI自动化-针对验证码登录的系统,通过首次手动登录存储cookie的方式后续访问免登录方法
开发语言·python·selenium
可可南木8 小时前
3070文件格式--11--wirelist文件格式详解 1
功能测试·测试工具·pcb工艺
LeenixP10 小时前
OpenHarmony调试工具安装与使用-HDC
windows·测试工具·华为·鸿蒙系统·hdc
0思必得010 小时前
[Web自动化] 数据抓取、解析与存储
运维·前端·爬虫·selenium·自动化·web自动化
Mr_Xuhhh16 小时前
JMeter性能测试工具核心面试复习指南
测试工具·jmeter·面试
0思必得01 天前
[Web自动化] 爬虫之API请求
前端·爬虫·python·selenium·自动化