数据分析系列---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)

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

相关推荐
山顶听风8 分钟前
多层感知器MLP实现非线性分类(原理)
人工智能·分类·数据挖掘
Tianyanxiao1 小时前
华为×小鹏战略合作:破局智能驾驶深水区的商业逻辑深度解析
大数据·人工智能·经验分享·华为·金融·数据分析
火星数据-Tina14 小时前
AI数据分析在体育中的应用:技术与实践
人工智能·数据挖掘·数据分析
Theodore_102216 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
Jay Kay17 小时前
ReLU 新生:从死亡困境到强势回归
人工智能·数据挖掘·回归
Blossom.11817 小时前
使用Python和Flask构建简单的机器学习API
人工智能·python·深度学习·目标检测·机器学习·数据挖掘·flask
生信学术纵览17 小时前
中科院1区顶刊|IF14+:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点
数据挖掘·数据分析
壹氿19 小时前
Supersonic 新一代AI数据分析平台
人工智能·数据挖掘·数据分析
SelectDB技术团队21 小时前
Apache Doris + MCP:Agent 时代的实时数据分析底座
人工智能·数据挖掘·数据分析·apache·mcp
企销客CRM1 天前
CRM管理软件的数据可视化功能使用技巧:让数据驱动决策
信息可视化·数据挖掘·数据分析·用户运营