2010-12-14 10 views
0

私は、Webページ内のすべてのリンクを取得したいが、javascriptのWebページの使用と、各ページには、私は次のページに移動して読むことができますどのようにリンクJavaのWebページのリーダー

の数が含まれているそのJavaプログラムに含まれています

+0

Webをクロールする必要がありますか(何千/何百万ものサイト)、またはほんの一握りのサイトをクロールする必要がありますか? – Joel

+0

私は最初のページのリンクを読みましたが、次のページのリンクを取得するアイデアがほしいと思っています。同じURLが含まれているだけなので、 – asas

答えて

1

この情報をJavascriptの実行ページから取得するのは難しい作業です。プログラムはページ全体を解釈し、JSが何をしているのかを理解しなければなりません。これを行っているすべてのウェブスパイダーではありません。

最近のJSライブラリ(jqueryなど)のほとんどは、HTML要素のCSSと属性を操作しています。最初に、HTMLソースとJSから「フラット」HTMLを生成し、フラットHTMLコード上で古典的なWebスパイダーを実行する必要があります。

(たとえば、FF webdeveloperプラグインでは、すべてのJSが完了したときにページの元のソースコードとページの生成コードが表示されます)。

+0

同意します。多くの場合、JS重いサイトでこれを適切に行う唯一の方法は、「ヘッドレスブラウザ」を使用してページをレンダリングすることです。 – Joel

1

あなたが探しているものはWeb Spider engineです。オープンソースのWebスパイダーエンジンがたくさんあります。たとえば、http://j-spider.sourceforge.net/を確認してください。

+0

動的JSリンクを抽出しますか? – Joel

+0

@Joel、ダイナミックJSリンクについては不明ですか?あなたは少し簡単に説明できますか? – ukanth

+0

私は、OPが動的に生成された(JS)リンクを持つサイトをクロールしたかったという印象を受けました... – Joel

関連する問題