質問
バス停の時刻を検索し、それに応じて個人のWebページを更新するプログラムを作成したい。
これを手動で行う場合、
- www.calgarytransit.comにアクセス
- ストップ番号を入力します。例)9510
- 「次のバス」ボタンをクリックします
結果は次のようになります。
10:16pルート154
10:46pルート154
11:32pルート154
時間とルートを取得したら、それに応じてWebページを更新します。
どこから始めればいいのかわかりません。私はWebプログラミングについて不法にしゃがんでいますが、CとPythonを書くことができます。検討できるトピック/ライブラリは何ですか?
解決
Beautiful Soup は、解析用に設計されたPythonライブラリです。ウェブページ。それと urllib2 ( Pythonのurllib.request 3)必要なものを把握できるはずです。
他のヒント
あなたが求めているのは「ウェブスクレイピング」と呼ばれるものです。周りをグーグルで検索するときっと何かが見つかるはずですが、中心的な概念は、Webサイトへの接続を開き、HTMLを丸みし、それを解析して、必要なチャンクを特定することです。
Python Wiki には、これに関する多くの情報があります。
Cで記述しているため、 cURL をチェックアウトすることをお勧めします。特に、libcurlを見てください。素晴らしいです。
Pythonで利用可能なmechanizeライブラリを使用できます http://wwwsearch.sourceforge.net/mechanize /
タスクを完了するためにPerlを使用できます。
use strict;
use LWP;
my $browser = LWP::UserAgent->new;
my $responce = $browser->get("http://google.com");
print $responce->content;
応答オブジェクトは、ページのコンテンツを返すだけでなく、成功したかどうかを通知できます。この同じライブラリを使用してページに投稿することもできます。
ここにいくつかのドキュメントがあります。 http://metacpan.org/pod/LWP::UserAgent
そのサイトは、必要な適切なデータを取得できるAPIを提供していません。その場合、たとえばCURLリクエストによって返される実際のHTMLページを解析する必要があります。
これは Webスクレイピングと呼ばれ、独自の Wikipediaの記事もあります。 で詳細を確認できます。
また、 SOディスカッション。
「スクレイプ」しようとするWebページのレイアウトが定期的に変更されない限り、現代のプログラミング言語でHTMLを解析できるはずです。