将 x-www-form-urlencoding 添加到 post request



邮递员的例子

import urllib2
url = "http://www.example.com/posts"

req = urllib2.Request(url,headers={'User-Agent' : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.30 (KHTML, like Gecko) Ubuntu/11.04 Chromium/12.0.742.112 Chrome/12.0.742.112 Safari/534.30" , "Content-Type": "application/x-www-form-urlencoded"})
con = urllib2.urlopen(req)
print con.read()

现在这段代码工作正常,但我想添加你在邮递员图片中看到的值以获得我想要的响应我不知道如何将键和值postid = 134686添加到 python 中,它是邮递员中的 post 请求

表单编码是发送带有数据的 POST 请求的常规方式。只需提供一个data字典;您甚至不需要指定内容类型。

data = {'postid': 134786}
headers = {'User-Agent' : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.30 (KHTML, like Gecko) Ubuntu/11.04 Chromium/12.0.742.112 Chrome/12.0.742.112 Safari/534.30"}
req = urllib2.Request(url, headers=headers, data=data)

需要注意的重要一点是,对于嵌套的 json 数据,您需要将嵌套的 json 对象转换为字符串。

data = { 'key1': 'value',
'key2': {
'nested_key1': 'nested_value1',
'nested_key2': 123
}
}

字典需要以这种格式转换

inner_dictionary = {
'nested_key1': 'nested_value1',
'nested_key2': 123
}

data = { 'key1': 'value',
'key2': json.dumps(inner_dictionary)
}
r = requests.post(URL, data = data)

最新更新