当前位置: 首页 > 知识库问答 >
问题:

无法通过xpath找到输入元素

段渊
2023-03-14

我试图通过xpath获取一个输入元素,但是return语句是false。

当我试图获取标签(它是输入的唯一兄弟)时,它返回true。我也尝试通过输入类型[@type=“checkbox”]获取它,但也失败了。

try {
    var select2 = wait.until(pkg.ExpectedConditions.visibilityOfElementLocated(pkg.By.xpath('//div[@class="arcHier arcVert arcTree"]/ol/li/ul/li[3]/div[@class="dragNode"]/label')))

    WDS.log.info('select2 found')

    var select3 = wait.until(pkg.ExpectedConditions.visibilityOfElementLocated(pkg.By.xpath('//div[@class="arcHier arcVert arcTree"]/ol/li/ul/li[3]/div[@class="dragNode"]/input')))

    WDS.log.info('select3 found')
}
catch (err) {
     WDS.log.error('item not found')
}
<li id="4_2_1_292719_8381e915e3af18b6f1f672da1ee582ef_LI" style="line-height:19px;border-color:#a0a0a0;color:#000000;" class="LI_1_2">
    <label class="arcSelectable" style="height:19px;">
        <input type="checkbox" id="4_2_1_292719_8381e915e3af18b6f1f672da1ee582ef_X" class="arcHpCbox" checked="checked">
        <span class="arcMenuCheckbox"></span>
    </label>
    <div class="dragNode">
        <input type="checkbox" id="4_2_1_292719_8381e915e3af18b6f1f672da1ee582ef" style="margin-top:3px;">
        <label draggable="false" for="4_2_1_292719_8381e915e3af18b6f1f672da1ee582ef" style="height:19px;">
            <span class="SPAN_1_2" style=""></span>
0001 Training_Test_Company
        </label>
    </div>
</li>
    null

共有1个答案

洪开诚
2023-03-14

输入元素可以是一个隐藏的复选框。您可以尝试使用presenceofelementlocited而不是visibilityofelementlocited,如下所示。

try {
    var select2 = wait.until(pkg.ExpectedConditions.visibilityOfElementLocated(pkg.By.xpath('//div[@class="arcHier arcVert arcTree"]/ol/li/ul/li[3]/div[@class="dragNode"]/label')))

    WDS.log.info('select2 found')

    var select3 = wait.until(pkg.ExpectedConditions.presenceOfElementLocated(pkg.By.xpath('//div[@class="arcHier arcVert arcTree"]/ol/li/ul/li[3]/div[@class="dragNode"]/input')))

    WDS.log.info('select3 found')
}
catch (err) {
     WDS.log.error('item not found')
}
 类似资料:
  • 我需要通过xpath找到一个具有“空”值的输入元素。 类似于。我的意思不是“空”这个词,而是值为空或空白。 什么Xpath将返回这样的元素? 谢啦

  • 我会收到以下错误消息: el=self.driver.find_element_by_xpath(element_query)文件“/usr/local/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py”,第393行,在find_element_by_xpath中返回self.find_element(by=by.

  • 请帮助我,我正在尝试选择一个图片,这是一个链接(一个网站上的培训师) 这是我的代码:

  • 问题内容: 以下是使用Java的WebDriver代码段: 执行代码后,出现以下异常: 线程“主”中的异常org.openqa.selenium.NoSuchElementException:无法找到元素:{“方法”:“ xpath”,“选择器”:” // html / body / div [2] / span / center / form / table / tbody / tr / td

  • 我想使用selenium单击一个按钮,并在站点的下拉日期选择器中选择该按钮。 我希望单击的按钮以黄色突出显示 http://covid.gov.pk/stats/ict 我正在使用以下xpath。 //*[@id=“datepicker-1361-7562-title”]/strong 这是我正在使用的代码 问题是,我可以点击下拉菜单上的其他元素,但不能点击这个按钮。 运行代码时遇到的错误。 ch

  • 我正在努力编写代码检查下载是由selenium和chrome驱动程序完成的。我的想法是 1.转到下载页面(“Chrome://下载/”) 然后尝试单击developer工具中的Ctrl+F,再次粘贴xpath。我找不到元素。为什么?检查没有框架。