Я делаю некоторые скриншоты экрана с помощью WATIJ, но он не может читать таблицы HTML (выбрасывает NullPointerExceptions или UnknownObjectExceptions). Чтобы преодолеть это, я читаю HTML и запускаю его через JTidy, чтобы получить правильно сформированный XML.
Я хочу проанализировать его с помощью XPath, но он не может найти <table ...>
на id
, даже если таблица находится в XML-формате как день. Вот мой код:
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, так что, может быть, я что-то упустил.
Кто-нибудь может меня поправить? Спасибо.