Python Equivalent Of Curl Http Post
I am posting to Hudson server using curl from the command line using the following-- curl -X POST -d '4142430A
Solution 1:
import urllib2
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
result = response.read()
where data is the encoded data you want to POST.
You can encode a dict using urllib like this:
importurllibvalues= { 'foo': 'bar' }
data = urllib.urlencode(values)
Solution 2:
The modern day solution to this is much simpler with the requests module (tagline: HTTP for humans! :)
import requests
r = requests.post('http://httpbin.org/post', data = {'key':'value'}, auth=('user', 'passwd'))
r.text # response as a string
r.content # response as a byte string
# gzip and deflate transfer-encodings automatically decoded
r.json() # return python object from json! thisis what you probably want!
Post a Comment for "Python Equivalent Of Curl Http Post"