首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Selenium使用xpath定位元素

如何通过Selenium使用xpath定位元素
EN

Stack Overflow用户
提问于 2020-01-12 02:28:28
回答 2查看 87关注 0票数 0

如何通过Selenium使用xpath定位元素

代码试用:

代码语言:javascript
复制
By.xpath("//*[contains(@class,'a-size-mini a-spacing-none a-color-base s-line-clamp-2') and contains(text(), \"Men's Downshifter 9 Training Shoes\")]"));

HTML:

代码语言:javascript
复制
<h2 class="a-size-mini a-spacing-none a-color-base s-line-clamp-2">
    <a class="a-link-normal a-text-normal" href="/Nike-Downshifter-Running-Shoes-Anthracite/dp/B07H84PMGS/ref=sr_1_3?dchild=1&amp;keywords=NIKE+TRAINERS+FOR+MEN&amp;qid=1578766779&amp;sr=8-3">
    
<span class="a-size-base-plus a-color-base a-text-normal">Men's Downshifter 9 Training Shoes</span>
            
       </a>

    
</h2>

EN

回答 2

Stack Overflow用户

发布于 2020-01-12 02:31:18

闭包]

代码语言:javascript
复制
By.xpath("//*[contains(@class,'a-size-mini a-spacing-none a-color-base s-line-clamp-2') and contains(text(), \"Men's Downshifter 9 Training Shoes\")]]"));

替代方案:

  1. //h2[.='Men's Downshifter 9 Training Shoes']
  2. //span[.='Men's Downshifter 9 Training Shoes']/ancestor::h2[1]
  3. //h2[./a[.='Men's Downshifter 9 Training Shoes']]
票数 1
EN

Stack Overflow用户

发布于 2020-01-12 05:37:19

要定位该元素,可以使用以下任一基于xpathLocator Strategies

使用xpath和text()

By.xpath(“//spantext()=\”男子Downshifter 9 Training Shoes\""));

  • Using xpath By.xpath contains()

类(“//span@class=‘a-size-base-plus a-color-base a-text-By.xpath’并包含(.,'s Downshifter 9 Training Shoes')"));

  • Using xpath and parent <a> tag:

class(“//a@By.xpath=‘a-link-normal a-text-normal’并以(@href,'/Nike-Downshifter-Running-Shoes-Anthracite/dp/')/span@class='a-size-base-plus a-color-base a-text-normal‘and contains(.,'Downshifter 9 Training Shoes’)‘)开始;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59697389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档