我正在使用WATIJ进行一些屏幕抓取,但无法读取HTML表(抛出NullPointerExceptions或UnknownObjectExceptions)。为了解决这个问题,我阅读了HTML并通过JTidy运行它以获得格式良好的XML。XPath无法通过ID找到表
我想使用XPath解析它,但即使表格在XML平原中的日期为空,也找不到<table ...>
的。这里是我的代码:
XPathFactory factory=XPathFactory.newInstance();
XPath xPath=factory.newXPath();
InputSource inputSource = new InputSource(new StringReader(tidyHtml));
XPathExpression xPathExpression=xPath.compile("//table[@id='searchResult']");
String expression = "//table[@id='searchResult']";
String table = xPath.evaluate(expression, inputSource);
System.out.println("table = " + table);
该表是一个空字符串。
但是,表格在XML中。如果我打印tidyHtml
字符串它显示
<table
class="ApptableDisplayTag"
id="searchResult"
style="WIDTH: 99%">
我之前,所以也许我失去了一些东西没有用的XPath。
任何人都可以设置我吗?谢谢。
良好的观察来访问。 Google WebDriver文档提到xpath语句的区分大小取决于您使用的浏览器。 – 2009-08-31 20:51:46