5

PycURL を使用して REST API の GET リクエストを作成しようとしています。パラメータを渡さなくても、リクエストを成功させることができます。次のようにして POST リクエストを行うこともできます。

curl.setopt(pycurl.POSTFIELDS, post_data)

ログイン パラメータを含む get リクエストを作成したいと考えています。上記の行を使用してパラメーターを渡そうとすると、代わりに POST を作成しようとします。ログイン パラメータを設定して GET リクエストを行う方法がわかりません。

どんな助けでも大歓迎です。

4

2 に答える 2

15

ブラウザの通常の URL と同様に、GET パラメータはエンコードさ?れ、URL の後に追加されます。Python のurllib.urlencodeを使用すると、次のことができます。

import urllib
import pycurl

url = 'http://www.google.com/search'
params = {'q': 'stackoverflow answers'}

c = pycurl.Curl()
c.setopt(c.URL, url + '?' + urllib.urlencode(params))
... # and so on and so forth ...
于 2011-03-17T21:48:21.410 に答える
1

pycurl.GETFIELDS オプションはないようです。そのため、次のようにこれらのパラメーターを URL に渡す必要があります。

http://your_url/some_path?param1=value1&param2=value2

ここで、param1、param2、value1、および value2 を に保存した値に置き換えますpost_data

于 2011-03-17T21:46:57.813 に答える