python urllib2 发布数据

标签 python linux urllib2 urllib

我需要将一些数据传递给以下 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/

相关文章:

python - Django 和 lxml 中的解码问题

python - 对称矩阵及其转置的逻辑比较

python - PyCharm docker 调试错误

linux - 如何使用 Graphviz 绘制三个正方形,一个在另一个里面

python - urllib2 在处理 url 中的冒号时遇到问题

python - 如何在urllib2请求中发送utf-8内容?

python urllib2 utf-8编码

python - 如何在Python中将固定长度文件转换为csv文件?

linux - Linux 4.4 中的 entry_64.S 和相关的 .S 文件在哪里?

linux - 如何使用销售脚本在格式为 key=value 的属性文件中搜索值?