我需要将一些数据传递给以下 urllib2 请求,
handler = urllib2.HTTPSHandler()
opener = urllib2.build_opener(handler)
request = urllib2.Request(url)
request.add_header("Accept",'application/*+xml;version=5.5')
request.add_header("x-vcloud-authorization",authtoken)
request.get_method = lambda: method
data = "some XML request"
try:
connection = opener.open(request)
except urllib2.HTTPError,e:
connection = e
if connection.code == 200:
data = connection.read()
#print "Data from Entity"
#print "Data :", data
else:
print "ERROR", connection.code
sys.exit(1)
将
connection = opener.open(request, data)
工作?如果不是,我如何将数据传递给请求?
更新:
我想我可以这样通过
request = urllib2.Request(url, data="some data")
最佳答案
您可以使用方法 urllib2.Request.add_data:
request.add_header('xxxx', 'vvvv')
request.add_data('some XML request')
opener.open(request)
这会将其转换为 POST 请求。
关于python urllib2 发布数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25144888/