gpt4 book ai didi

java - 在 FirefoxDriver 中选择
  • 元素
  • 转载 作者:行者123 更新时间:2023-12-01 14:18:32 24 4
    gpt4 key购买 nike

    我想单击页面中的列表项。

    <ul class="categories" id="cat1">
    <li onClick="chooseCateg(this.form, '315', 1);">Business Opp.</li>
    <li onClick="chooseCateg(this.form, '269', 1);">Cars / Trucks</li>
    <li onClick="chooseCateg(this.form, '301', 1);">Community</li>
    <li onClick="chooseCateg(this.form, '6', 1);">For Sale</li>
    <li onClick="chooseCateg(this.form, '4', 1);">Jobs</li>
    <li onClick="chooseCateg(this.form, '3', 1);">Pets</li>
    <li onClick="chooseCateg(this.form, '2', 1);">Real Estate</li>
    <li onClick="chooseCateg(this.form, '7', 1);">Services</li>
    </ul>

    我想在上面点击服务。我正在使用 FirefoxDriver

    那么我怎样才能实现它呢?帮帮我。

    最佳答案

    您之所以陷入困境,可能是因为您不知道 XPath expressions .

    numerous strategies how to locate elements in WebDriver :

    这些都是不言自明的,应该尽可能使用:

    • By.id
    • By.name
    • By.className
    • By.tagName

    应谨慎使用这些链接,因为有时看似链接的链接实际上并非真实的 <a>元素。

    • By.linkText
    • By.partialLinkText

    这些是最强大、最先进的策略,能够满足您大多数“我不知道该怎么做”的问题。

    • By.cssSelector
    • By.xpath

    学习并喜欢CSS selectors因为它们通常更短且更具可读性。它们的匹配速度也更快。但它们也有缺点 - 最明显的是它们无法匹配文本。

    这就是XPath expressions的地方一旦发挥作用,如果使用得当,它们可以匹配(几乎)所有东西。它们是最慢的并且难以阅读,因为它们很容易变得冗长。阅读规范中有趣的部分,在线查找一些教程并学习它们。

    现在,您可以通过以下方式找到 Services元素:

    WebElement services = driver.findElement(By.xpath("//li[text()='Services']"));

    XPath 表达式本身:

    //li[text()='Services']

    只是为了让你知道并且当你看到它时不要害怕它,这也可以(并且通常是)写为:

    //li[.='Services']

    关于java - 在 FirefoxDriver 中选择 <li> 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17873124/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com