Request库的安装与使用

安装

pip install reqeusts

Requests库的7个主要使用方法

  • requests.request() 构造一个请求,支撑以下各方法的基础方法
  • requests.get() 获取HTML网页的主要方法,对应HTTP的GET方法
  • requests.head() 获取HTML网页头信息的方法,对应HTTP的HEAD
  • requests.post() 向HTML网页提交POST请求的方法,对应HTTP的POST
  • requests.put() 向HTML网页提交PUT请求的方法,对应HTTP的PUT
  • requests.patch() 向HTML网页提交局部修改请求,对应于HTTP的PATCH
  • requests.delete() 向HTML页面提交删除请求,对应HTTP的DELETE

Response对象的属性

  • r.status_code HTTP请求的返回状态,200表示连接成功,404表示失败
  • r.text HTTP响应的正文字符串
  • r.encoding 从HTTP header中猜测的响应内容编码方式
  • r.apparent_encoding 从内容中分析出的响应编码方式
  • r.content HTTP响应内容的二进制形式

使用get方法的流程

检查r.status_code,如果返回200,继续处理,如果返回404,则说明访问出错。

encoding 和 apparent_encoding的区别

encoding是header的charset中记录的编码,若没有改标签,则默认为iso-8859-1
apparent_encoding是分析文本内容中出现的字符确定的编码。
一般来说如果文本编码识别错误,可以将apprent_encoding赋值给r.encoding

Requests库的异常

requests.ConnectionError 网络连接错误异常,如DNS查询失败、拒绝连接
requests.HTTPError HTTP错误异常
requests.URLRquired URL确实异常
requests.TooManyRedirects 超过最大重定向次数,产生重定向异常
requests.ConnectTimeout: 远程连接超时异常
requests.Timeout: 请求URL超时,产生超时异常
r.raise_for_status() 如果返回的状态码不是200,则会产生requests HTTPError异常

request方法

requests.requst(method,url,**kwargs)

  • method:请求方式,对应get/put/post等7种

    r = requests.request(‘GET’,url,**kwargs)
    r = requests.request(‘HEAD’,url,**kwargs)
    r = requests.request(‘POST’,url,**kwargs)
    r = requests.request(‘PUT’,url,**kwargs)
    r = requests.request(‘PATCH’,url,**kwargs)
    r = requests.request(‘DELETE’,url,**kwargs)
    r = requests.request(‘OPTIONS’,url,**kwargs)

url:页面的链接

**kwargs: 控制访问的参数,共13个

  • params: 字典或字节序列,作为参数增加到url中
  • data: 字典、字节序列或文件对象,作为Request的内容
  • json: JSON格式的数据,作为Request的内容
  • header: 字典,HTTP定制头
hd = {'user-agent':'Chrome/10'}
r = requests.request('POST','HTTP://python123.io/ws',headers=hd)
  • cookies:字典或CookieJar,Request中的cookie
  • auth :元组,支持HTTP认证功能
  • files: 字典类型,传输文件
fs = {'file':open('data.xls','rb')}
r = requests.request('POST','http://python123.io/ws',files=fs)
  • timeout:给请求设置超时时间
  • proxies: 字典类型,设定访问代理服务器,可以增加登录认证
pxs = {'http':'http://user:pass@10.10.10.1':1234'
'http':'http://10.10.10.1:4321'
}
r = requests.request('GET','http://www.baidu.com',proxies=pxs)
  • allow_redirects: True/False,默认为True,重定向开关
  • stream: True/False,默认为True,获取内容立即下载开关
  • verify: True/False,默认为True,认证SSL证书开关
  • cert: 本地SSL证书路径

转载于:https://www.cnblogs.com/infoflow/p/8975274.html

Request库的安装与使用相关推荐

  1. python安装request库_Python——安装requests第三方库

    使用pip安装 在cmd下cd到这个目录下C:\Python27\Scripts,然后执行pip install requests 在cmd 命令行执行 E:   进入e盘 cd  Python\pr ...

  2. Request库入门

    一.Requests库的安装与简介 Request库是Python中最受欢迎的第三方库之一,主要用于网络信息的爬取,是爬取网页最好用的第三方库.库的方法足够简单,只用一行代码就可以实现爬取. Requ ...

  3. request对象_爬虫:request库的简介

    一. request库的安装 在命令行输入pip install requests进行安装 随后进行调用,发现成功 二. request库的最常用方法:get 方法 r= request.get(ur ...

  4. Request库的相关用法

    Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTT ...

  5. Python里的request库安装

    安装request库 python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,接下来就是安装这个库的步骤 刚开始时,你是没有这个模块的 那么 ...

  6. 我在自学python_我要自学python 自动化-request库

    1.  postman和jmeter上手容易,但是不够灵活.所以使用python来进行接口测试. 2.  python基础的http库有 urllib,httplib2 等,推荐使用request库来 ...

  7. Robot Framework中经常用的第三方库的安装方法

    pip升级: python -m pip install --upgrade pip 一.安装robotframework-selenium2library,相当于python中的selenium   ...

  8. python第三方库批量安装_使用Python批量安装第三方库

    Python的很多功能通过第三方库实现,99%的第三方库可以通过Python自带的pip方法进行自动下载和安装.然而Python有几十万个第三方库,最常用的也有几十个.想要一次性地安装几十个常用的第三 ...

  9. IPP库的安装以及源码分析方法

    目录 第一部分 IPP环境搭建(基于win10的WSL) 1.1 WSL的几种安装方法 1.1.1 开启wsl支持 1.1.2 (可选)使用Windows store直接安装 (1)下载 (2)安装 ...

最新文章

  1. python第三方库之学习flask-restful
  2. 巴什博弈例题:NYOJ23;HDU:2149,1847,2897,2188
  3. 字符数组,字符串、数字转化
  4. 【计算机网络笔记】编码与调制
  5. mvc:view-controller
  6. linux上openmp测试
  7. 娟红静敏,从女孩子名中可以看出什么
  8. atitit.MyEclipse10 中增加svn插件故障排除
  9. python函数手册 chm_Python中文文档
  10. linux入门命令总结
  11. 蓝桥杯单片机备赛笔记
  12. css2d变形模块,CSS变形transform(2d)
  13. mysql 时区时间_mysql的时间不对(时区问题)
  14. 模拟电子_安规X电容和Y电容的区别与作用
  15. org.apache.flink.shaded.guava18.com.google.common.util.concurrent.ThreadFactoryBuilder 真实解决方案
  16. 2021-01-04
  17. 到底什么是范数?什么是0范数、1范数、2范数?区别又是什么?
  18. Mongoose第三方包常用操作整理
  19. 音响设备常用连接头及音视频线材的制作方法
  20. linux shell 中文输入,Linux操作系统的Shell环境中输入中文

热门文章

  1. JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(推荐七)
  2. C# 基于密钥的64位加密与解密方法(原创)
  3. remoting和webservice的区别
  4. 再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题
  5. Bayer Pattern to RGB
  6. 阿里开发者们的第18个感悟:每次困难出现时,就是成长的机会出现了
  7. 记录一次无聊的(经历了Nodejs - Shell - C)的探索问题过程
  8. lua 代码加密方案
  9. ECS服务器CPU使用率异常100%问题排查
  10. Ubuntu root 密码 sudo passwd