|
カテゴリ:その他
mechanize (Web ブラウジングをプログラムするための Python のモジュール) を使ってみることにした。mechanize は、Andy Lester さんの WWW::Mechanize (Perl 版) を参考に Python で実装したものようだ。WWW::Mechanize の日本語情報を眺めてみる。このページにあるものや、サンプルスクリプトが参考になりそうだ。file upload script for sourcefourge.jp のように Mecab の sourceforge.jp へのアップロードにも使われているようだ。これも参考になるスクリプト。
urllib を使えばページをとってきたりするのは楽にできるのだが、その後、とってきたページを解析して、そこからフォームを取り出して、フォームに自動入力してポストしたりだとか、ページの一部を切り出したりだとか、そういうことをやるには mechanize を使ってしまうのが楽そう。今さらながらクッキー もあるか。 IE に依存して自動操作をしたいときに参考になるページ で PAMIE も見つけた。やはりこれも、SAMIE(Simple Automation Module For Internet Explorer) という Perl のモジュールから派生した Python 版のようだ。PAMIE の使用例は、動トレードシステム本体 のページにあった。 Perlモジュール/WWW::Mechanize に Yahooニュースの今日の記事一覧を取得 というのがあるので同じようなことを Python でやってみる。 mechanize の インストールとりあえず、今は Linux を使っているので、
でインストール完了。 Yahooニュースのコンピュータ一覧の記事一覧を取得とりあえず、ページをとってきてみる。
(上記のリストは全角スペースを使ってできるだけレイアウトが崩れないようにしているので、全角スペースを半角スペースに変換しないと動きません。) 文字コードの変換が面倒かつ見苦しいので、ちゃんと調べてきれいにやった方がいいか。だいたい同じようなものになるかな。ん、これだとアクセスランキングの方も表示されちゃう。ま、とりあえず、使いかたが確認できたのでよしとするか。 フォームに値を入れて submit するのもやってみる。楽天にログインさせようとしたら、robot だと 403 を返してくる。
Robot じゃないよとするためには、br.set_handle_robots(False) としてやればよいようだ。まあ、なかなか役立ちそうな感じがする。 お気に入りの記事を「いいね!」で応援しよう
[その他] カテゴリの最新記事
|