2

取得したいデータを提供するウェブサイトがあります。ただし、ダウンロードフォームでは少しずつダウンロードできるので、記入して「ダウンロード」ボタンを約18000回押す必要があります。このWebサイトのフォーラムでは、管理者は、このフォームを使用してデータをダウンロードすることがデータを取得する唯一の方法であり、プロセスを自動化するスクリプトを作成する人もいると述べています。このようなスクリプトは、複数のダウンロードを同時に開始しない場合に適格です。そのようなスクリプトを書きたいのですが、Webページとサーバーの相互作用に慣れていないため、どこから始めればよいのかわかりません。

私はC/C ++プログラムを書いた経験があり、bashスクリプトを少し知っています。私はhtmlの基本を知っていますが、htmlフォームがどのように機能するかを本当に理解していません。私は通常Ubuntuで作業していますが、必要に応じてWindows7もインストールしています。

どこから始めればよいか教えてください。どのツールを使用でき、どの概念をこのタスクを解決するために学ぶ必要がありますか。どの本/チュートリアル/記事がその方向での私の教育に役立つ可能性があります。

特に、私が知っている言語(C ++、bashスクリプト)はこのスクリプトに適していますか、それとも他の言語を学ぶ方が良いですか?どのプログラムを使用して理解し、スクリプトはサーバーに何を送信し、どのようにファイルを受信する必要がありますか?

4

1 に答える 1

2

この種のものはウェブスクレイピングと呼ばれます。それを行うには複数の方法があります。curlと呼ばれるコマンドラインツールを使用すると、ブラウザと同じ方法でWebサイトからリソースを取得できます。ただし、スクリプト化可能であり、パラメーターを渡してブラウザーのように機能させることができます。

通常、Pythonのようなスクリプト言語を使用してこれを実行しますが、bashスクリプトとcurlを使用して実行することは困難ですが可能です。送信ボタンをクリックすると、Webサイトに送信している内容を正確に把握する必要があります。firefoxプラグインのfirebugは、これを理解し、curlを使用して同じことを行うのに役立ちます。curl呼び出しをループに入れ、パラメーターを変更して18000クリックをシミュレートします。

于 2012-05-16T09:48:55.997 に答える