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

Xpath无法在HTMLUnit上工作

梁华清
2023-03-14

我正在使用Selenium Web驱动程序,同时使用Chrome和HTMLUnit。对于Chrome,下面的代码可以工作,但HTMLUnit返回一个错误,表示找不到元素。

SeleniumUtils.goURL(driver, "https://someweb.com");
Thread.sleep(3000); //Added just in case it was loading time
List<WebElement> list = SeleniumUtils.getElements(driver, TrackingPage.getTableContent());

最后一行将返回null,未找到任何元素。使用的XPath是:

return By.xpath("//*[@id=\"__xmlview1--idProductsTable-tblBody\"]/tr");

与Chrome配合使用,在XPath与HTMLUnit配合使用时失败。知道吗?

使用的驱动程序如下所示:

HtmlUnitDriver driver = new HtmlUnitDriver();

共有2个答案

荀正谊
2023-03-14

请尝试以下代码:

List<WebElement> list = driver.findElements(By.xpath("//*[@id=\"__xmlview1--idProductsTable-tblBody\"]/tr"));
陈哲
2023-03-14

尝试使用这个:

//*[@id='__xmlview1--idProductsTable-tblBody']/tr 

我在这里使用了单引号。这没什么区别,但你可以试试看它是否有效。请务必让我知道它是否有效。

 类似资料:
  • 问题内容: 我目前正在使用HtmlUnit开发一些测试。它正在加载一个包含braintree.js(其表单加密库)的页面。我跑了一堆,但我被困在所谓的加密货币上。有问题的JS是: HtmlUnit抛出: 我想HtmlUnit不包含加密。我自己可以包括一个密码库吗? 问题答案: 根据您的评论,我不得不告诉您HtmlUnit在涉及JavaScript时令人不安。它将抱怨很多关于变量未定义和未知函数等问

  • 问候flutter开发人员正在开发一个应用程序,iOS和Android使用手机身份验证用户一切正常iOS但Android当这一行被称为我得到一个错误: 错误: E/flutter(14190):[ERROR: flutter/shell/通用/shell.cc(184)]Dart错误:未处理的异常: E/flutter(14190): PlatformExc0019(错误,空引用,空)E/flut

  • 我对Android Studio有意见。 任务:应用程序:ProcessDebugResources失败AGPBI:{“kind”:“error”,“text”:“Android资源链接失败”,“sources”:[{“file”:“/users/luisabsg/.gradle/caches/transforms-2/files-2.1/270e51d2bcfda0833b0b336f50197

  • 我一直在运行一个webserver和Coldfusion直到我升级到Mountain Lion,然后它就停止工作了。我让它再次工作了,把所有的东西重新打开,升级禁用了,但现在我已经升级到小牛,没有任何工作。我已经遵循了所有的步骤在各种web文章,但它不会工作。PHP被启用了,之前启用的所有东西都被设置好了,包括虚拟主机,所有的文件夹都在同一个地方。 我得到的错误是:Firefox无法在127.0.

  • 试图让硒测试与ChromeHeadless一起工作(我们目前正在使用远程硒网络驱动程序,它工作正常,但速度很慢)。ChromeDriver用以下方式实例化: (我只用setHeadless和--headless作为参数都试过了,我想我应该加倍确定,所以代码目前包含了这两个参数)。日志显示: 还有一个“DevTools”请求:http://127.0.0.1:12771/json/version,D

  • 在windows上使用netbeans已经很久了,没有问题。在Debian上安装了它,它启动了,但大多数按钮没有响应(新项目/新文件...)。 这是使用终端发射时的结果。 Netbeans版本:8.2 OS:Parrot(debian OS的发行版)JDK版本:9.0.1 提前道谢。