【数据采集与可视化案例】基于python的国家级非物质文化遗产数据采集与可视化分析

简介: 本文介绍了一个基于Python的数据采集与可视化分析项目,该项目通过爬虫技术从国家级非物质文化遗产代表性项目名录网站获取数据,并运用数据清洗、转换、集成和规约等方法处理数据,最终利用pyecharts库进行多种数据可视化展示,包括分布地、类别、时间趋势等,以直观呈现非物质文化遗产的相关信息。

1. 获取数据

1.1 发起请求

首先确定采集的数据网址url,通过查看国家级非物质文化遗产代表性项目名录的网页发现,点击下一页,网页网址没有变化,可以确定数据是动态数据。需要在xhr或者js寻找。

在xhr中可以找到网页数据,所以可以根据这个地方确定爬取的url是: https://www.ihchina.cn/Article/Index/getProject.html?province=&rx\_time=&type=&cate=&keywords=&category\_id=16&limit=10&p=1, 其中limit=10是页最大显示数,p=1代表第一页,所以翻页和最大显示数可以确定https://www.ihchina.cn/Article/Index/getProject.html?province=&rx\_time=&type=&cate=&keywords=&category\_id=16&limit=100&p={a}, a表示定义翻页数,可以通过循环获取不同页码,利用request。Get()方法,像这个网址发起请求,获取数据。

1.2 获取地址

根据1.1内容,依样画葫芦可以发现,国家级非物质文化遗产代表性项目代表性传承人、国家级非物质文化遗产代表性项目名录这两个页面,可以通过for循环获取到。而中国入选联合国教科文组织非物质文化遗产名录(名册)项目国家级文化生态保护区数据少,而且数据可以在页面上获取,不用构建翻页,直接选择原网址即可。

1.3 分析页面

通过1.1可以知道,国家级非物质文化遗产代表性项目代表性传承人、国家级非物质文化遗产代表性项目名录这两个页面的数据需要xhr查看到,如下图

可以发现其数据是以字典和列表为主,是一个典型的json数据特征。而国家级文化生态保护区和联合国教科文组织项目可以在页面上定位到数据,数据在网页标签内,故可以选择使用beautifulsoup或者lxml的etree解析数据,通过节点数爬取标签数据,如下图

1.4 数据提取

综合前面的内容可以知道,国家级非物质文化遗产代表性项目代表性传承人、国家级非物质文化遗产代表性项目名录这两个页面的数据经过get()方法请求获取响应数据后,选择将数据直接转换成json数据,通过字典键值对和循环列表数据提取里面的字段信息,包括内容如下图:

中国入选联合国教科文组织非物质文化遗产名录(名册)项目国家级文化生态保护区这两个页面数据,通过get方法获取响应信息后,利用etree解析网页数据,并通过定位标签,提取所包含的所有节点信息,提取出里面的字段如下图:

1.5 数据存储

国家级非物质文化遗产代表性项目代表性传承人、国家级非物质文化遗产代表性项目名录数据、国家级文化生态保护区三个页面提取成功后,通过openpyxl库,创建一个工作簿,通过指定单元格的形式来写入数据,最后保存为excel文档。

中国入选联合国教科文组织非物质文化遗产名录(名册)项目,通过采集下来的数据转换成dataframe数据结构,通过to_excel方法,将数据结构里的数据存为excel文档。

数据转换

对数据进行转换就是对数据的合并、清理和整合。通过转换,可以实现不同的源数据在语义上的一致性。本研究数据转换更多应用是数据类型的转换和整合。主要将表格数据读取转换成dataframe,再通过可视化之前,再由dataframe结构转换成list或者元组等数据类型,方便可视化进行。

数据清洗

数据清洗,顾名思义就是将要用到的数据中重复、多余部分的数据进行筛选并清除;把缺失部分补充完整,并将不正确的数据纠正或者删除。最后整理成可以进一步加工、使用的数据。从上面数据清洗的概念就可以大概知道数据清洗是在清洗什么了,洗掉的就是数据集中的“脏”数据。脏数据,即数据集中残缺、错误、重复的数据。数据清洗,旨在提高数据的质量、缩小数据统计过程中的误差值。本研究中,通过替换法,直接替换那些缺失值,使用replace()方法,将空值填补成无或者0,方便后面数据分析。

数据集成

数据集成包括数据抽取、转换、加载。抽取是将数据从已有的数据源中提取出来。
转换是对原始数据进行处理,变成目标数据格式的过程。加载是将转换的结果写入目的地。本研究通过if条件语句,将国家级非物质文化遗产代表性项目名录中地点抽取处理,存为dataframe结构数据,方便后期统计和可视化。

数据规约

数据归约是指在对挖掘任务和数据本身内容理解的基础上、寻找依赖于发现目标的数据的有用特征,以缩减数据规模,从而在尽可能保持数据原貌的前提下,最大限度地精简数据量。数据归约主要有两个途径:属性选择和数据采样,分别针对原始数据集中的属性和记录。本研究通过属性选择进行数据规约,如在国家级非物质文化遗产代表性项目名录数据中选择类别和申报地区进行分析。

2 数据可视化

2.1 分布地可视化

分布地可视化选择用饼状图,呈现各个地区入选项目数量的分布情况,清晰直观看出哪个地区占比最大,入选最多。通过导入数据,生成dataframe结构利用groupby函数将地区分组统计,转化成列表形式,最后使用pyechart可视化库,将数据渲染成饼图输出,如下图

2.2 类别可视化

类别可视化选择用柱状图,呈现不同类别入选的数量分布,可以直观知道哪个类别入选最多,哪个类别最少。通过导入数据,生成dataframe结构利用groupby函数将类别分组统计,转化成列表形式,最后使用pyechart可视化库,将数据渲染成柱形图输出,如下图

2.3 类别时间可视化

类别时间可视化通过分析非遗数据传承人不同类别随时间变化的趋势,本研究通过多重折线图,将不同类别数量随时间变化体现出来。可以直观知道哪个类别在什么时间最多,在什么时间最少。通过导入数据,生成dataframe结构利用筛选时间的方式将时间单独统计以及使用groupby函数分组统计类别,转化成列表形式,最后使用pyechart可视化库,将数据渲染成多重折线图输出,如下图

2.4 人数时间可视化

人数时间走势可视化通过分析非遗数据传承人不同时间人数变化趋势,可以直观知道不同时间段,非遗项目人数变化趋势。直观知道哪个时间在项目最多,在什么时间最少。通过导入数据,生成dataframe结构利用groupby函数将时间分组统计,转化成列表形式,最后使用pyechart可视化库,将数据渲染成折线图输出,如下图

非物质文化遗产生态保护区目录

保护区目录分布通过复合柱状图形式呈现不同地区县级和国家级项目数量,直观了解哪个地区项目最多,哪个地区项目最少。通过导入数据,生成dataframe结构利用groupby函数将地区分组统计,转化成列表形式,最后使用pyechart可视化库,将数据渲染成复合柱形图输出,如下图

名录可视化

名录可视化呈现的是中国入选联合国教科文组织非物质文化遗产名录,通过词云图的形式将项目呈现在图上面。通过导入数据,提取所有项目转换成列表,通过for循环统计各个项目出现次数,生成一个含有项目和个数的元组的列表,最后使用pyechart可视化库,将数据渲染成词云图输出,如下图

相关文章
|
1月前
|
数据可视化 搜索推荐 大数据
基于python大数据的北京旅游可视化及分析系统
本文深入探讨智慧旅游系统的背景、意义及研究现状,分析其在旅游业中的作用与发展潜力,介绍平台架构、技术创新、数据挖掘与服务优化等核心内容,并展示系统实现界面。
|
3月前
|
数据采集 Web App开发 数据可视化
Python爬虫分析B站番剧播放量趋势:从数据采集到可视化分析
Python爬虫分析B站番剧播放量趋势:从数据采集到可视化分析b
|
28天前
|
数据采集 监控 数据库
Python异步编程实战:爬虫案例
🌟 蒋星熠Jaxonic,代码为舟的星际旅人。从回调地狱到async/await协程天堂,亲历Python异步编程演进。分享高性能爬虫、数据库异步操作、限流监控等实战经验,助你驾驭并发,在二进制星河中谱写极客诗篇。
Python异步编程实战:爬虫案例
|
13天前
|
数据采集 自然语言处理 数据可视化
Python爬取B站视频评论区情感分析:从数据采集到价值挖掘
B站作为年轻人聚集地,评论蕴含丰富情感与趋势。本文详解如何用Python爬取评论,结合SnowNLP与jieba进行中文情感分析,并通过可视化挖掘用户情绪、消费意愿与内容反馈,助力精准运营与决策。
115 0
|
1月前
|
数据可视化 数据挖掘 大数据
基于python大数据的水文数据分析可视化系统
本研究针对水文数据分析中的整合难、分析单一和可视化不足等问题,提出构建基于Python的水文数据分析可视化系统。通过整合多源数据,结合大数据、云计算与人工智能技术,实现水文数据的高效处理、深度挖掘与直观展示,为水资源管理、防洪减灾和生态保护提供科学决策支持,具有重要的应用价值和社会意义。
|
1月前
|
设计模式 缓存 运维
Python装饰器实战场景解析:从原理到应用的10个经典案例
Python装饰器是函数式编程的精华,通过10个实战场景,从日志记录、权限验证到插件系统,全面解析其应用。掌握装饰器,让代码更优雅、灵活,提升开发效率。
140 0
|
1月前
|
机器学习/深度学习 搜索推荐 数据可视化
基于python大数据的音乐可视化与推荐系统
本研究基于Python实现音乐数据采集、清洗、分析与可视化,并结合协同过滤算法构建个性化推荐系统。通过Echarts展示音乐热度及用户偏好,提升用户体验,助力音乐产业智能化发展。
|
1月前
|
搜索推荐 算法 大数据
基于python大数据的旅游景点可视化与推荐系统
本系统基于大数据与网络技术,构建个性化旅游推荐平台。通过收集用户偏好及行为数据,结合机器学习算法,提供精准的旅游目的地、住宿及交通推荐,旨在优化旅游信息传递,提升用户决策效率与旅行体验。

推荐镜像

更多