2

Web サイトに接続し、Web サイトから動的に生成されたデータを読み取るプログラムを (任意の言語で) 作成する方法を見つける必要があります。

動的に生成されることに注意してください。ソース html を取得するだけでは十分ではありません。関心のあるデータは、バックエンド コードを参照する JavaScript を介して生成されるためです。そのため、Web ページのソースを表示すると、データが表示されません。(たとえば、Google にアクセスして検索します。検索結果ページでソース コードを確認してください。ブラウザが表示しているデータのほとんどがソースに反映されていません。そのほとんどは動的に生成されています。何らかの方法が必要です。このデータにアクセスします。)

4

4 に答える 4

1

HTML レンダラー (.NET や WebBrowser コントロールなど) を含む言語と環境を選択します。HTML レンダラーを使用して URL を取得し、メモリ内に HTML DOM を生成します (スクリプトが有効になっていることを確認してください)。レンダラーが作業を完了した後、HTML DOM のコンテンツを読み取ります。

System.Windows.Form例 (派生クラス内でこれを行う必要があります):

WebBrowser browser = new WebBrowser();
browser.Navigate("http://www.google.com");
HtmlDocument document = browser.Document;
// extract what you want from the document
于 2009-10-21T12:09:57.923 に答える
0

簡単な考え:AJAXについて話している場合は、動的データのURLを調べることができます。次に、話しているページのjavascriptを使用して、これを再フォーマットできます。

于 2009-10-21T12:32:07.253 に答える
0

Firefox/greasemonkey を使用している場合、DOM ダンパーを作成するのは簡単なことです。

于 2009-10-21T12:42:51.070 に答える
0

以前は、ある場所から別の場所へのドライブ方向を取得するために Mapguide.com にアクセスするための Perl プログラムを使用していました。返されたページを解析し、データベースに保存しました。ソースがフォーマットを変更しない場合は問題ありません。問題は、ソース形式が頻繁に変更されることです。パーサーも変更する必要があります。

于 2009-10-21T12:13:20.427 に答える