2011-12-15 11 views
0

大量のデータを収集するためにPythonスクリプトを作成していますが、残念ながら、興味のある情報を得るためにいくつかのWebフォームを送信する必要があります。数千回繰り返して、それを自動化するのが理にかなっています。フォーム提出に必要なヘッダーを決定する方法

私はこの種のフォームの側面を扱ったことがないので、いくつか質問があります。ここで私が使用していたコードの抜粋です:

url = 'http://example.com/result.do' 
values = {'id' : 'value', 'id' : 'value', 'submit' : 'Submit'} 
data = urllib.urlencode(values) 
req = urllib2.Request(url, data) 
response = urllib2.urlopen(req) 
the_page = response.read() 

私の質問: は、私はそれらを選択しない場合でも、すべてのフォームフィールドを渡す必要がありますか?

HTTPヘッダーを渡す必要がありますか?誰かが私にこの良い説明にリンクすることができますか?

何か不足していますか?

答えて

0

Mechanizeモジュールをご覧になることをおすすめします。フォームを選択したり、フィールドを入力したり、オプションを選択したり、ボタンをクリックしたりすることができます。フォームが通常のブラウザで送信したフォームデータが自動的に生成されます。

ここにはちょっとしたチュートリアル/例があります:http://stockrt.github.com/p/emulating-a-browser-in-python-with-mechanize/

関連する問題