欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

深入requests库params|data|json参数

程序员文章站 2022-03-21 21:29:01
深入requests库params|data|json参数 一.params params : 字典或者字节序列 ,作为参数增加到URL中。不仅访问URL,还可以向服务器携带参数。 举例演示 二.data|json 在通过requests.post()进行POST请求时,传入报文的参数有两个,一个是 ......

深入requests库params|data|json参数

一.params

params:字典或者字节序列,作为参数增加到url中。不仅访问url,还可以向服务器携带参数。

简单来讲也就是说对于原来的网址进行内容的提交形成新的url

举例演示

data ={
    'wd':'ywy',
}
rp = requests.get('https://www.baidu.com/s',params=data)
print(rp.url)
print('-'*200)
rp_1 = requests.get('https://www.baidu.com/s?wd=ywy')
print(rp_1.url)
'''
https://www.baidu.com/s?wd=ywy
---------------------------------------
https://www.baidu.com/s?wd=ywy
'''

二.data|json

与requests.post()进行联用

在通过requests.post()进行post请求时,传入报文的参数有两个,一个是data,一个是json。
常见的form表单可以直接使用data参数进行报文提交,而data的对象则是python中的字典类型;
而在最新爬虫的过程中遇到了一种payload报文,是一种json格式的报文,因此传入的报文对象也应该是格式的;

演示

data={
    'xx':'xx'
}
import request 
import json
# 1
requests.post(url, data=json.dumps(data))
# 2-json参数会自动将字典类型的对象转换为json格式
requests.post(url, json=data)

#很明显如果是data其格式必须为字符串这时候要进行json模块的转化,而json进行传的时候就不需要进行转换