前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Requests库

Requests库

作者头像
小小咸鱼YwY
发布2019-07-24 16:43:55
发布2019-07-24 16:43:55
6740
举报
文章被收录于专栏:python-爬虫python-爬虫

Requests库

`

1.Response对象的属性

属性

说明

r.status_code

HTTP请求返回的状态,200表示成功,404表示失败,还有其他的也代表失败

r.text

HTTP响应内容转换成字符串格式

r.content

HTTP响应内容转换成二进制格式

r.encoding

从HTTP header中猜测响应内容

r.apparent_encoding

从内容中分析响应内容的编码方式(备选编码方式)

r.encodingr.apparent_encoding

  • r.encoding:如果header中不存在charset,则默认编码为ISO-8859-1
  • r.apparent_encoding :根据内容来匹配出合适的编码
  • apparent_encoding比encoding更加准确的展示编码方式

2.Requests库的异常

异常

说明

requests.ConnectionError

网络连接错误异常,如DNS查询失败、拒绝连接等

requests.HTTPErro

HTTP错误异常

requests.URLRequired

URL缺失异常

requests.TooManyRedirects

超过最大重定向次数,产生重定向异常

requests.ConnectTimeout

连接远程服务器超时异常

requests.Timeout

请求URL超时,产生超时异常

  • 如果在r.status_code不是200时候,我们可以r.raise_for_status(),如果不是200,引发HTTPError异常 举例:通用爬取的框架 import requests def get_html_text(url): try: r =requests.get(url,timeout=30) r.raise_for_status() #如果不是200,引发HTTPError异常 r.encoding = r.apparent_encoding return r.text except: return '产生异常' if __name__ == '__main__' #在pycharm中你可以直接main+Tab快速出这行 get_html_text(https://www.cnblogs.com/pythonywy)

3.Requests库的方法

3.Requests库的方法

http协议中6个方法

介绍

GET

请求获取url位置的资源

HEAD

请求获取url位置的资源的响应报告,及获得头部信息

POST

请求获取url位置的资源后附加用户新的数据

PUT

请求获取url位置储存一个资源,覆盖原url位置资源

PATCH

请求局部更新url位置资源,及改变该处资源的部分内容

DELETE

请求删除url位置储存的资源

  • 获取云端资源用get,head
  • 把自己资源放入云端用put post patch
  • 删除现有资源del 用url对资源位置的定义 1.patch与put区别 patch可以对于局部修好,put是全部覆盖 requests与协议方法一一对应

方法

介绍

requests.request()

设置请求格式

requests.get()

请求获取url位置的资源

requests.head()

请求获取url位置的资源的响应报告,及获得头部信息

requests.post()

请求获取url位置的资源后附加用户新的数据

requests.put()

请求获取url位置储存一个资源,覆盖原url位置资源

requests.patch()

请求局部更新url位置资源,及改变该处资源的部分内容

requests.delete()

请求删除url位置储存的资源

4.Requests库13个参数

  • params:字典或字节序列,作为参数增加到链接中
  • data:字典,字节序列或文件对象,作为请求的内容
  • json:JSON格式的数据,作为Request的内容
  • headers:字典,HTTP定制头(模拟浏览器进行访问)
  • cookies:字典或CpplieJar,Request中的cookie
  • auth:元祖,支持HTTP认证功能
  • files:字典类型,传输文件
  • timeout:设定超时时间,秒为单位
  • proxies:字典类型,设定访问代理服务器,可以增加登陆认证
  • allow_redirects:True//False,默认为True,重定向开关
  • stream:True/False,默认为True,获取内容立即下载开关
  • verify:True/False,默认为True,认证SSL证书开关
  • cert:本地SSL证书路径
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Requests库
    • 1.Response对象的属性
    • 2.Requests库的异常
    • 3.Requests库的方法
    • 3.Requests库的方法
    • 4.Requests库13个参数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档