WATIJ を使用してスクリーン スクレイピングを行っていますが、HTML テーブルを読み取ることができません (NullPointerExceptions または UnknownObjectExceptions をスローします)。これを克服するために、HTML を読み取り、それを JTidy で実行して整形式の XML を取得します。
XPathで解析したいのですが、テーブルがXMLプレーンにあるのに<table ...>
byが見つかりません。id
これが私のコードです:
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 を使用したことがないため、何か不足している可能性があります。
誰でも私を正すことができますか?ありがとう。