python爬虫5--requests请求库

四叶草 2020-01-04

使用该库需先安装,能更方便的处理Cookies,登录验证,代理设置等。

urllib中urlopen()实际是以GET方法请求网页,requests中响应的方法为get(),另外还可用post(),put(),delete()等方式实现POET,PUT,DELETE等请求。

1 普通用法

1.1 GET请求

python爬虫5--requests请求库

 如果网页返回的是JSON格式,可以调用json()方法转变成字典格式。

1.2 POST请求

python爬虫5--requests请求库

 1.3 属性

  • requests的属性:
  • text和content:响应的内容;
  • status_code:状态码;
  • headers:响应头;
  • cookies:Cookies信息;
  • url:url;
  • history:请求的历史

2 高级用法

2.1 文件上传

代码:

import requests

files = {‘file’:open(‘文件名‘,‘rb)}

res = requests.post(url,files=files)

2.2 Cookies

登录后将headers里的cookies内容复制下来,封装在headers中,来维持登录状态。

2.3 会话维持

利用Session,可以模拟同一个会话,通常用于模拟登录成功之后再进行下一步操作。

2.4 SSL证书验证

可以在发送请求时加一个verify参数,默认True。

2.5 代理设置

用proxies参数

2.6 超时设置

timeout参数,默认为None。请求分为连接和读取两个阶段,timeout设置的时间为两个阶段的总和

2.7 身份验证

req = requests.get(url,auth=(‘username‘,‘userpass‘)

 

 

相关推荐