0

Web から HTML ドキュメントを読み込んで解析するためのコードを書いています。

私は次のようにJDOMを使用しています:

SAXBuilder parser = new SAXBuilder();
Document document = (Document)parser.build("http://www.google.com");
Element rootNode = document.getRootElement();
/* and so on ...*/

そのようにうまく機能します。しかし、URL を「http://www.kijiji.com」などの他の Web サイトに変更すると、parser.build(...)回線がハングします。

なぜハングするのですか?kijiji が私が「本物の」Web ブラウザではないことを知っているためではないかと考えています。おそらく、http リクエストをスプーフィングして、IE などから来ているように見せる必要がありますか?

どんなアイデアも役に立ちます、ありがとう!

ロブ

4

1 に答える 1

0

ここでいくつかのことが起こっている可能性があると思います。最初の問題は、通常の HTML を JDOM で解析できないことです。HTML はXML ではありません....

次に、JDOM を介して kijiji.com を実行すると、すぐに HTTP_400 応答が返されます。

google.com を解析すると、すぐに整形式に関する XML エラーが発生します。

ただし、ある時点で xhtml を解析している場合は、次の場所でこの問題に遭遇する可能性があります

XHTML には、他の doctype などを参照する doctype があります。w3c.org から読み込むには、それぞれ 30 秒かかります....

于 2012-05-09T19:53:51.633 に答える