request入门与使用
什么是request?
request,即网络中的请求,由头、体、与一些参数组合构成,具有无状态性等特性
与数据分析有什么关系?
数据分析,顾名思义就是对数据进行分析得出结论的一种技术。那么,数据从哪里来呢?这时候就需要引出爬虫了:
爬虫与requests是的关系
什么是爬虫?爬虫即爬取页面上的数据,主要特性为所见即所得,只要看得到,就能爬下来,是主流收集大量数据的技术。那么它与request又有什么关系呢?首先,我们需要先了解一下爬虫的流程:
- 访问浏览器
- 通过对网站进行一些操作发送对应的请求
- 获取发送请求的响应
- 通过工具解析响应
- 存储处理好的响应数据
- 数据分析、建模......
通过上述流程我们可以看到,爬虫大致流程就是请求、响应、解析与存储,那么,想要爬取数据,就绕不开request。
requests初体验
下面,我们来体验一下request的流程
首先,使用pip安装request包:
pip install requests
接着创建一个py文件并引入它:
import requests
首先,我们先了解一下一个请求的结构,方便我们进行后面的操作:
![[Pasted image 20250116114915.png]]
转自 [
]
可以看到一个请求的结构一般为请求行、请求头、请求体三个结构,其中三个结构包含的信息一般为:
请求行:说明协议、请求的资源与请求类型(GET/POST/DELELTE.....)
请求头:用于发送一些必要的数据给服务器端进行处理,如cookie与user-agnet
请求体:请求的主体,一般跟有请求的参数用于服务器端处理
接着,我们先大致过一遍基本的请求类型:
GET:一般用于获取资源
POST:用于数据的提交
DELETE:用于资源的删除
PUT:用于数据的修改,相对与POST具有覆盖性,即重复执行会覆盖之前的操作
了解完这些后,打开你的IDE,开始实战练习吧!
import requests
url="http://baidu.com"#需要请求的地址,这里直接填写百度
response=requests.get(url)#获取请求响应
print(response)
运行完如上代码,应该会有这样的输出:<Response [200]>
这段输出是什么意思呢?其中Response是响应体,其中的200则是状态码,表示请求成功,那么,如何看到响应的内容呢?很简单,我们只需要调用响应的text等属性即可:
import requests
url="http://117.72.112.6"#需要请求的地址,这里直接填写是我的服务器测试地址,可自行搭建
response=requests.get(url)#获取请求响应
print(response.status_code)#查看状态码
print(response.text)#查看返回的文本
在使用request爬取数据时,我们一般使用text属性获取返回的网页数据,最后再使用lxml匹配对应的标签选择器获取内容并使用csv包存储到csv中进行后续准备。

浙公网安备 33010602011771号