当我们发送POST请求的时候,一般会携带数据,POST请求,可以通过给data赋值,从而能够完成传递form表单数据
例如:
requests.post(url, data={"kw": "python"})
但有很多时候,要向服务器发送的是json数据,此时改怎么办呢?
一,发送json格式数据的方式
想要发送json格式的请求数据,只需要给json命名参数赋一个字典即可,如下
requests.post(url, json={"kw": "python"})
示例:
import requests
headers = {
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
}
r = requests.post("https://fanyi.baidu.com/sug", headers=headers, json={"kw": "python"}, timeout=3)
print("请求头是:", r.request.headers)
print("请求体是:", r.request.body)
效果: