request模块使用大全

一、Request模块
虽然Python的标准库中urllib模块已经包含了平时我们使用的大多数功能,但是它的API使用起来让人感觉不太好,而Request自称“HTTP for Humans”,说明使用更简洁方便。
  Request继承了urllib的所有特性。Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定相应内容的编码,支持国际化的URL和POST数据自动编码

二、基本GET请求(headers参数和parmas参数)
1.最基本的GET请求可以直接用get方法
  import requests
  request=requests.get(‘http://www.baidu.com/’)

2.添加headers和查询参数
  如果想添加headers,可以传入headers参数来增加请求头中的headers信息。如果要将参数放在url中传递,可以利用params参数。
request模块使用大全
response返回的是对象需要在后面使用text或者content来解析内容,       如response.text/content.decode(‘utf-8’)

使用text时,Request会极域HTTP响应的文本编码自动解码响应内容,大多数Unicode字符集都是能被无缝的解码

使用content时,返回的是服务器响应数据的原始二进制字节流,可以用来保存图片等二进制文件。

三、基本POST请求(data参数)
1.最基本的POST请求可以直接用post方法
 response = request.post(‘http://www.baidu.com/’,data = data)

2.传入data参数
 对于POST请求来说,我们一般需要为它增加一些参数。那么最基本的传参方法可以利用data这个参数。

四、代理(proxy参数)
如果需要使用代理,可以通过为任意请求方式提供proxies参数来配置单个请求:
  respones = requests.request(“get”,“https://www.baidu.com”,proxies = proxies)

代理是以键值对形式输入,一个http,一个https,如:
  proxies = {“http”:“http://121.34.567.89:1314”,
  “https”:“https://89.34.567.121:4646”}

五、处理HTTPS请求SSL证书验证
Requests也可以为HTTPS请求验证SSL证书:
  要想检查某个主机的SSL证书,你可以使用verify参数(verify 是设置为True,选项 verify 仅应用于主机证书,改为FALSE忽略对 SSL 证书的验证)
  
requests是一个相当强大的库,完全满足如今网络的需求,好好使用。
以上,加油吧,最后看看官网网址的霸气(骚气)的HTML主页。
request模块使用大全