Bootstrap

requests框架详解

目录

一、requests原理

二、requests安装

三、requests基本用法

3.1、GET请求

3.2、POST请求

3.3、爬取图片数据

3.4、上传文件

3.5、查看Cookies

3.6、维持连接

3.7、设置代理

3.8、验证身份

3.9、Prepared Request


一、requests原理

        Requests是python中用来响应HTTP请求,处理URL数据的框架。该库是基于urllib编写的,相较urllib,requests库更加容易操作与学习。

二、requests安装

在cmd后台中输入pip3 install requests,当显示success时完成下载

 

三、requests基本用法

3.1、GET请求

        Get方法中输入相应url连接,结果返回一个响应对象,数据类型为requests .models. Response

 

        Get请求可以添加请求参数,标准写法如下:

        除text方法外,如果返回数据类型为str类型,则可以用json()方法,将其转化为字典数据类型,方便解析接口数据。

3.2、POST请求

        post方法中输入对应url地址连接,以及部分请求参数,如下图所示:

        请求参数仅在form中显示,不在url后缀中显示(get和post之间的区别)

 

3.3、爬取图片数据

        在网页中爬取对应图片/音频/视频等二进制数据,通过with open...as上下文管理器进行保存。

 

3.4、上传文件

        通过requests模拟提交数据,通过二进制方式读取当前目录下的文件,将其上传至url地址连接中

 

3.5、查看Cookies

        获取cookies,其中items()方法将cookies转化成列表,在经过遍历便可打印对应信息

3.6、维持连接

        代码中无论通过request.get还是request.post方法,都是相当于打开了两个不同的连接会话,这两个连接之间可以说是毫无关联的,如果说我们需要在第一个请求连接基础上直接再次获得对应的信息,则需要用Session类维持会话,如下所示:

        

3.7、设置代理

        当需要对一个网站进行频繁或大规模爬取操作时,需要用到代理设置操作,具体参数为proxies

 

3.8、验证身份

        Requests库中可以使用自带的身份验证功能,实现类为HTTPBasicAuth,如果确认正确,则会下发200状态码,如果不正确,则会返回401状态码。

 

3.9、Prepared Request

        构建Request对象,写入url、data和headers参数,再调用Session的prepare_request( )方法将其转换为一个Prepared Request对象,最后调用send( )发送带对应参数的申请请求。

 

;