深入requests库params|data|json参数
程序员文章站
2022-06-23 23:19:59
深入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进行传的时候就不需要进行转换
上一篇: Ruby微信开发的几个开源项目介绍