2

Web サイトの解析に htmlparser を使用していますが、非常に奇妙な問題に陥っています。Webページですべての<li>ノードを取得しようとしていますが、私のコードは次のようなものです:

String url = "http://s.1688.com/selloffer/offer_search.htm?keywords=%BD%A8%B2%C4&n=y&categoryId=";
Parser parser = new Parser(url);
parser.setEncoding("gb2312");

NodeList list = parser.extractAllNodesThatMatch(new TagNameFilter("li"));
// NodeList list = parser.parse(new CssSelectorNodeFilter("li[class=\"sm-offerShopwindow\"]"));
System.out.print(list.size() + "\n");
for (int i = 0; i < list.size(); i++) {
Node li = list.elementAt(i);
System.out.print("text:" + li.getText() + "\n");
}

しかし、リスト サイズの出力は常に 20 です。そのページのすべてのノードを移動していないようです。なんで?アドバイスをありがとう。

4

1 に答える 1

0

トップ ブラウザでさえ、HTML のふりをしている奇妙なものすべてを解析する方法に常に同意しているわけではありません。Web は 2006 年から非常に発展しました。 HTML。

于 2013-12-22T08:15:20.310 に答える