当前位置 : 主页 > 编程语言 > python >

requests的使用

来源:互联网 收集:自由互联 发布时间:2022-10-26
安装requests 第三方库,需要安装,​​pip install requests​​ 以下是代码,我会根据代码来给大家解释怎么使用。(完整实例) 第一步,先引入第三方包:​​import requests​​ 第二步,

安装requests

第三方库,需要安装,​​pip install requests​​

以下是代码,我会根据代码来给大家解释怎么使用。(完整实例)

第一步,先引入第三方包:​​import requests​​

第二步,我们准备请求数据:

params = {'wd': 'python'} 请求参数
url = 'http://www.baidu.com/s?' 请求地址
headers = {} 请求header头

第三步,发起get请求:​​r = requests.get(url, params=params, headers=headers)​​

第四步,手动设置编码:​​r.encoding = ''​​

第五步,获取请求完的内容 ​​r.text # 返回的是一个字符串文本内容 r.content # 返回的是二进制​​

如上,我们是使用的get请求。接上代码,我们看看post请求怎么使用。

第一步,发起post请求,参数:url是路由,data是post的参数。​​requests.post(url=url, data={})​​

第二步,查看返回的数据。​​r.json() # 返回字典​​

处理cookie,获取cookie

在我们爬取数据,或者请求url之后,返回的header中,有cookie,我们会对这些cookie做处理,然后使用它来做之后的请求等操作。

接着上面的操作,我们在请求url之后,假设会返回一些cookie,我们保存下来。一般,我们存储cookie方式:1,写文本2,数据库,存储为字典形式是因为resques接受的参数是字典的形式。

cookies = {}
for items in r.cookies.items():
cookies[items[0]] = items[1]

接上代码,我们再次发起请求,这次,我们使用cookies参数。​​r = requests.get(url, params={}, headers={}, cookies={})​​

我们在抓包,可能使用带代理,requests也支持代理的使用。​​r = requests.get(url, params={}, headers={}, cookies={}, proxies={})​​

在抓包请求url的时候,我们可能会遇到重定向,比如,http协议的百度,就会重定向到https协议的百度。 ​​r = requests.get(url, params={}, headers={},cookies={},proxies={},allow_redirects=False) 重定向,false禁止重定向,true开启重定向​​

刚刚说到https,此协议会证书校验,我们可以跳过证书校验。​​r = requests.get(url, params={}, headers={},cookies={},proxies={},allow_redirects=False,verify=False)#禁止证书校验ssl​​

在请求url的时候,可能在一定时间请求不到,这个时候,会请求失败,我们可以设置一个超时时间。​​r = requests.get(url, params={}, headers={},cookies={},proxies={},allow_redirects=False,timeout=1)#设置超时​​

我们也会遇到使用session的情况:

#创建session对象

上一篇:urllib的使用
下一篇:没有了
网友评论