わかりましたので、Python を使用していくつかの Web ページをダウンロードする必要があり、オプションを簡単に調査しました。
Python に含まれるもの:
urllib - 代わりに urllib2 を使用する必要があるようです。urllib は Cookie をサポートしておらず、HTTP/FTP/ローカル ファイルのみ (SSL なし)
urllib2 - 完全な HTTP/FTP クライアントで、Cookie などの最も必要なものをサポートしますが、すべての HTTP 動詞をサポートしているわけではありません (GET と POST のみ、TRACE などはサポートしていません)。
フル機能:
mechanize - Firefox/IE の Cookie を使用/保存でき、2 番目のリンクをたどるなどのアクションを実行でき、積極的にメンテナンスされています (2011 年 3 月に 0.2.5 がリリースされました)。
PycURL - curl が行うすべての機能 (FTP、FTPS、HTTP、HTTPS、GOPHER、TELNET、DICT、FILE、および LDAP) をサポートします。悪いニュース: 2008 年 9 月 9 日以降更新されていません (7.19.0)
新しい可能性:
urllib3 - 接続の再利用/プーリングとファイル投稿をサポート
非推奨 (代わりに urllib/urllib2 を使用):
httplib - HTTP/HTTPS のみ (FTP なし)
httplib2 - HTTP/HTTPS のみ (FTP なし)
最初に私を襲ったのは、urllib/urllib2/PycURL/mechanize がすべてうまく機能するかなり成熟したソリューションだということです。mechanize と PycURL は多くの Linux ディストリビューション (Fedora 13 など) と BSD に同梱されているため、通常、インストールは問題になりません (これは良いことです)。
urllib2 は良さそうですが、なぜ PycURL と mechanize の両方が非常に人気があるように見えるのか疑問に思っています。自分にとって最良の選択ができるように、これらの長所と短所についてフィードバックをいただければ幸いです。
編集: urllib2 の動詞サポートに関するメモを追加