【问题标题】:Selenium locator how do I locate a list of child div class attribute tagsSelenium 定位器如何定位子 div 类属性标签的列表
【发布时间】:2020-09-20 00:04:30
【问题描述】:

我正在尝试查找子 div 类标签的列表。当我在 Chrome 中检查元素时,我尝试过的以下 Xpath 没有选择我想要的所有元素。
在页面上显示了 5 个选项卡。我想将所有这 5 个元素放入一个列表中,这样我就可以使用 For Each 循环来迭代这些元素

我想找到所有这些标签

<div class="jsx-1429490698 Tab Tab_active Tab_sports">sports</div>
<div class="jsx-1429490698 Tab  Tab_casino">casino</div>
<div class="jsx-1429490698 Tab  Tab_liveCasino">live &amp; real</div>
<div class="jsx-1429490698 Tab  Tab_esports">esports</div>
<div class="jsx-1429490698 Tab  Tab_vegas">vegas</div>

我的 Xpath 是

//div[@id='__next']//following-sibling::div[contains(@class, 'Tab')]

我将定位器标记为

[FindsBy(How.Xpath, Using="//div[@id='__next']//following-sibling::div[contains(@class, 'Tab')]")]
private IList<IWebElement> PromotionBrandTabsListElement {get; set;}

在 Chrome 中尝试此 Xpath 定位器时首先突出显示

<div class="jsx-1350237217 Tabs__container">

然后它突出显示

<div class="jsx-1429490698 Tab  Tab_casino">casino</div>

我希望它突出体育、赌场、LiveCasino、电子竞技和维加斯 我想把所有这些放到一个列表元素中

HTML 结构是

<div id="__next">
<div class="jsx-2794910414 top">
    <div class="jsx-133833352 Promotions__container">
        <div class="jsx-1850983400 Title__container">
            <div class="jsx-1850983400 Title__text--container">
                <div class="jsx-1850983400 Title__text">Promotions</div>
            </div>
        </div>
        <div class="jsx-1350237217 Tabs__container">
            <div class="jsx-1429490698 Tab Tab_active Tab_sports">sports</div>
            <div class="jsx-1429490698 Tab  Tab_casino">casino</div>
            <div class="jsx-1429490698 Tab  Tab_liveCasino">live &amp; real</div>
            <div class="jsx-1429490698 Tab  Tab_esports">esports</div>
            <div class="jsx-1429490698 Tab  Tab_vegas">vegas</div>
        </div>
        <div class="jsx-3650671054 jsx-3221847745 Promotion">
    </div>
</div>

请问我如何获得体育、赌场、LiveCasino、电子竞技和拉斯维加斯标签。

谢谢

【问题讨论】:

    标签: c# css selenium selenium-webdriver xpath


    【解决方案1】:

    尝试将您的 xpath 表达式更改为

    //div[@id='__next']//div[contains(@class, 'Tabs__container')]//div[contains(@class, 'Tab')]
    

    看看它是否有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 2021-02-26
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多