0

http コンテンツを取得して投稿するために、python requests ライブラリを使用しています。get 関数の使用に問題はありませんが、post 関数が失敗するか、まったく何もしないようです。リクエストライブラリの私の理解から、POST関数は送信するデータを自動的にエンコードしますが、それが実際に起こっているかどうかはわかりません

コード:

data = 'hash='+hash+'&confirm=Continue+as+Free+User'   
r = requests.post(url,data)
html = r.text

html の「値」を確認することで、返される応答が POST のない URL の応答であることがわかります。

4

3 に答える 3

3

リクエストがそれをエンコードする方法を利用していません。そのためには、次のようにコードを記述する必要があります。

data = {'hash': hash, 'confirm': 'Continue as Free User'}
r = requests.post(url, data)
html = r.text

これをテストすることはできませんが、これがエンコードが自動的に行われる方法です。

于 2013-10-11T02:09:07.437 に答える
0
post(url, data=None, **kwargs)
Sends a POST request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
于 2016-04-12T14:10:53.567 に答える