html
ファイルは使いたくありませんが、DjangoでPOSTリクエストをする必要があります。
と同じように urllib2
はget
リクエストを送信します。
Urllib2とurllibのメソッドを組み合わせることでうまくいきます。この2つを使用してデータを投稿する方法は次のとおりです。
post_data = [('name','Gladys'),] # a sequence of two element tuples
result = urllib2.urlopen('http://example.com', urllib.urlencode(post_data))
content = result.read()
rlopen() は、URLを開くために使用する方法です。 rlencode() は、引数をパーセントエンコードされた文字列に変換します。
python-requests
を使用して、受け入れられた回答の例を記述する方法は次のとおりです。
post_data = {'name': 'Gladys'}
response = requests.post('http://example.com', data=post_data)
content = response.content
はるかに直感的。より単純な例については、 Quickstart をご覧ください。
あなたが今見るべき唯一のこと:
あなたはcanDjangoでurllib2
を使用できます。結局のところ、それはまだpythonです。 urllib2
でPOST
を送信するには、data
パラメーター( here から取得)を送信できます。
urllib2.urlopen(url [、data] [、timeout])
[..] HTTPリクエストは、データパラメータが指定されている場合、GETではなくPOSTになります
注意してください、あなたが使用しているとき???? requests
、次のようにPOST
パラメーターで辞書を渡すdata
リクエストを作成します。
_payload = {'param1':1, 'param2':2}
r = request.post('https://domain.tld', data=payload)
_
パラメーター_form-encoded
_を渡しています。
JSON(サーバー/サーバー統合で最も一般的なタイプ)のみでPOST
リクエストを送信する場合は、data
パラメーターにstr()
を指定する必要があります。 JSONの場合、_import json
_ libを作成し、次のようにする必要があります。
_ payload = {'param1':1, 'param2':2}
r = request.post('https://domain.tld', data=json.dumps(payload))`
_
ドキュメンテーション ここにあります