数据分析系列---requests的使用

🌈个人主页:羽晨同学

💫个人格言:"成为自己未来的主人~"

主环境和虚拟环境

主环境是电脑上安装的python环境

虚拟环境在项目中可以实现环境的隔离,假设DemoA和DemoB分别用到了某个三方库1.0和2.0版本,那么在一个环境中,就会出现冲突,这个三方库只能安装其中一个版本。

这个时候就出现了虚拟环境,可以通过已安装的环境创建多个虚拟环境。

分别给DemoA和DemoB各自分配一个虚拟环境,那么每个项目需要用到哪个三方库,按需安装,各不冲突。

requests的使用

首先,我们需要导入模块

python 复制代码
import  requests

这个模块的作用是向网址发送请求(本质是向网址所在的服务器发送请求),得到响应结果。

python 复制代码
URL = 'http://www.baidu.com/'

比如说,我们想要访问的是百度。

在访问之前,一般来说,我们需要把爬虫进行伪装。

python 复制代码
Headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36'
}

我们可以通过设置headers来进行伪装,headers是标头,其中的User-Agent是标头当中的一个参数,它的存在足以使爬虫应对大部分的网站。

那么它怎么找呢?

然后,我们向网址发送请求,得到其给的响应结果(响应结果中包含了我们需要的各种信息)

python 复制代码
response =requests.get(url=URL,headers=Headers)

然后我们可以打印这个响应结果,看一下可以得到些什么?

python 复制代码
print(response) # <Response [200]>

我们可以从结果当中看到对应的状态码,状态码决定了爬虫是否能用。

python 复制代码
print(response.status_code)# 200

我们可以通过这个来看到对应的状态码

这个打印出来的200代表着爬虫正常访问了服务器。

这里,我们多说几个其他的状态码:

403:爬虫被拒绝了

404:网页丢失

500:服务器崩溃

如果网页中发生了乱码,再写下面的这一段代码,其中,utf-8表示这个网页的编码方式。

python 复制代码
response.encoding = 'utf-8'

这个我们可以从网页源代码中的charset中查看,这个是一定存在的。

我们也可以通过代码查看网页的源代码。

python 复制代码
print(response.text)

我们可以通过这个语句来查看网页的源代码。此时的网页源代码是字符串类型的。

使用正则表达式从网页原地阿妈中匹配信息

我们首先先导入正则

python 复制代码
import re
python 复制代码
regexStr = r'<span class ="title-content-title">(.*?)</span>'
# 在findall方法中,正则表达式的哪部分有分组,最终获取的就是哪部分
result = re.findall(regexStr,response.text)
# print(result)
for i in result:
    print(i)

好了,今天的内容就到这里,我们明天再见。

相关推荐
anghost1501 小时前
基于 STM32 的湖泊水位报警系统设计
stm32·嵌入式硬件·数据挖掘
Lun3866buzha2 小时前
大型铸件表面缺陷检测与分类_YOLO11-C2BRA应用实践
人工智能·分类·数据挖掘
李慕婉学姐3 小时前
【开题答辩过程】以《基于python的气象灾害数据分析与可视化系统》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
开发语言·python·数据分析
Wuhan87827211m3 小时前
微生物细胞检测与识别 大肠杆菌E.coli和其他细菌细胞自动检测与分类 RetinaNet+RegNet模型实现
人工智能·分类·数据挖掘
qq_12498707534 小时前
基于spark的新闻文本分类系统(源码+论文+部署+安装)
大数据·分类·数据挖掘·spark
OOOaaa1231231 天前
电子电路板元器件识别与分类_yolov8-fasternet-bifpn实现方案_1
yolo·数据挖掘
adaAS14143151 天前
YOLO11-ReCalibrationFPN-P345实现酒液品牌识别与分类_1
人工智能·分类·数据挖掘
罗小罗同学1 天前
基于虚拟染色的病理切片进行癌症分类,准确率可达到95.9%,在统计学上逼近真实染色的金标准,两小时可处理100张切片
人工智能·分类·数据挖掘·医学图像处理·医学人工智能
L.fountain1 天前
图像自回归生成(Auto-regressive image generation)实战学习(二)
学习·数据挖掘·回归
桓峰基因1 天前
SCS 60.单细胞空间转录组空间聚类(SPATA2)
人工智能·算法·机器学习·数据挖掘·聚类