版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南商务职业技术学院毕业设计
目录
1引言............................................................................................................................1
1.1项目背景......................................................................................................1
1.2开发环境与工具..........................................................................................2
1.2.1Python简介..........................................................................................2
1.2.2JupyterNotebook简介......................................................................2
1.2.3Python第三方库简介..........................................................................3
2需求分析....................................................................................................................4
2.1可行性需求分析..........................................................................................4
2.2采集目标功能分析......................................................................................4
2.3关键技术分析..............................................................................................5
2.3.1网络爬虫技术.......................................................................................5
2.3.2文件存取技术.......................................................................................5
2.3.3可视化技术...........................................................................................5
3数据采集....................................................................................................................6
3.1采集页面分析..............................................................................................6
3.2字段分析......................................................................................................7
3.3编程实现......................................................................................................8
4数据清洗与处理......................................................................................................10
4.1数据清洗....................................................................................................10
4.2数据储存....................................................................................................11
5数据统计与分析......................................................................................................12
5.1数据准备....................................................................................................12
5.2数据展示....................................................................................................12
5.2.1作者统计分析.....................................................................................12
5.2.2发表次数统计分析.............................................................................13
5.2.3发表次数统计分析.............................................................................15
5.2.4依据每月的发表次数进行统计.........................................................15
I
湖南商务职业技术学院毕业设计
5.3统计分析小节............................................................................................16
6小结..........................................................................................................................17
参考资料.........................................................................................................................18
II
湖南商务职业技术学院毕业设计
古典文学网数据采集与分析
1引言
时间乃是最大的革新家,我们的祖国从开始的工业化时代走向现代化时
代,再到信息化时代,信息化时代就是信息产生价值的时代。在这个移动互联
网技术的高速发展阶段,正是我们这一代年轻人应该抓住的时机和机会。随着
时代的发展和进步使得各种移动互联网技术应用层出不穷、接连不断,云计
算、大数据、物联网、人工智能等计算机互联网技术已经深入广大人民群众日
常生活的各个方面,生活水平得到了显著的提升,人民的幸福指数也在不断提
升,随之而来的是广大人民群众在日常生活中产生的数据越来越多,开发价值
和利用价值越来越大,让我们有东西去学习和开发,然后应用在我们的日常生
活中,将人民的生活水平再次提高。
我们这一代是幸运的,正好赶上时代发展的浪潮,更幸运的是乘上了信息
革命的航母,就像是踩在巨人的肩膀上一样,逐渐进入到一个信息广阔无垠的
时代,让我们拥有更多的机会去探索和发现。
1.1项目背景
古典文学网是一个记录许多古典文化的网站,包括国学文化,古诗词,诗
词名句,文言文,历史故事,古代典籍,古典小说,还有大部分人都热爱的武
侠小说等,里面都有收录。目前,我们已经进入大数据时代,各种发展迅速,
使得生活水平的快速提高,人民群众从原来解决温饱转到提高文化水平和提升
精神层面,已经形成“活到老,学到老”的人生态度。很大一部分人民群众喜
欢国学文化,特别是唐诗,但是一些上年纪人民群众不会用手机和电脑和不喜
欢使用手机和电脑去阅读和查询资料,小孩子们大多也没有手机,所以大部分
的人民群众需要纸质的书本来了解和学习这些古典文学,老人和孩子则更加需
要纸质的书籍。那么,就需要古典文学的各种资料和具体数据,所以我们需要
从古典文学网站查询相关资料。涉及到古典文学信息有很多,我们需要对网页
进行解析。然后通过Python爬虫的手段批量获取我们想要的资料。
我的毕业设计就是针对广大群众的需要,然后爬取古典文学网站唐诗数
据,对其进行处理,分析,然后可视化。繁杂的数据经过清洗加分析后,可以
以作者,时期等进行分类,以便更好的出版书籍对应各种消费群体。所以我的
1
湖南商务职业技术学院毕业设计
毕业设计部分包含数据爬取、清洗处理、储存、可视化。
1.2开发环境与工具
1.2.1Python简介
1990年,Python由荷兰的吉多·范罗苏姆设计。Python的创建的初期并
没有很突出的特点,所以没有引起人们的注意,直到在21世纪初Google在大
量的项目业务上开始应用Python,Python也因此走进大众的视野,更多人开
始使用Python,从而使得Python的快速发展。
随着计算机技术的高速发展,2010年后,移动互联网技术的大肆普及。
云、大、物、智等新型信息技术兴起,其中的大数据技术涉及到的数据获取、
清洗处理、可视化等都有Python的存在。云计算中许多接口都支持Python的
调用,对于平台实现自动化极其友好。再到后来人工智能技术的崛起,AI领域使
用了更多的Python技术,用它作关键的开发工具。并且Python入门难度相较
于JAVA、C++等面向对象的语言而言更加简单、容易入门,所以它很快的便被
大众普遍使用。
在编程语言的排行榜中。Python的排名已经与老牌的C语言和JAVA语言
不相上下,Python的语法非常的简洁明了,和其它编程语言相比较,实现同
一个功能,Python语言的实现代码会比其他语言简短的多。即便是非软件专
业的初学者,稍微接触一下,也很容易上手,因此它也逐渐走进非IT行业工
作者的视野内,这也突出Python的特点就是容易学。并且Python第三方库非
常丰富、而且免费开源、支持跨多平台且可移植性比较强,使得更多人喜欢使
用Python进行编程。
1.2.2JupyterNotebook简介
JupyterNotebook的前身叫做IPythonNotebook,数据分析的好帮手,
能将说明文本、数学方程、代码和可视化内容完美的组合到一个共享的文档
中。JupyterNotebook的用途还包括:数据清理和转换、数值模拟、统计建
模、数据可视化、机器学习等等,并且它支持超过40种编程语言,包括
Python、R、Julia、Scala等。除此之外,还可以通过安装相应的kernel,实
现MATLAB等语言的使用,非常适合从事机器学习、数据分析等数据科学工作
人员。它可以直接在代码旁写出叙述性文档,而不是另外编写单独的文档。也
就是说它可以能将代码、文档等这一切集中到一处,让用户一目了然,非常的
2
湖南商务职业技术学院毕业设计
方便。
1.2.3Python第三方库简介
Requests:是Python中最友好的网络爬虫功能库,是Python实现的简单
易用的HTTP库,无需手动为URL添加查询串,也不需要对POST数据进行
表单编码。基于urllib,但使用起来比urllib更简洁、方便很多,可以节约大
量的工作时间,Python第三方库在使用前要先进行安装。
CSV:CSV属于Python中的内置模块,CSV模块实现了很多类,可以用来
读写CSV格式的表格数据。该模块可以使得编程人员,将数据以Excel所偏好
的格式写入文件,或者读取由Excel生成的文件,并且CSV文件是表格和数据
库中常见的文件操作格式,很多程序在处理数据时都会碰到CSV这种格式的文
件,它的使用是比较广泛的。
NumPy:NumPy库是Python数据分析的基础,NumPy和稀疏矩阵运算包
scipy配合使用更加方便。NumPy还拥有许多高级的数值编程工具,NumPy包含
很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。
pandas:是一个免费、开源的第三方Python库,是Python数据分析必
不可少的工具之一,pandas中拥有大量库和标准的数据模型,它为Python数
据分析提供了高性能,是操作大型数据集必备的工具之一。
Matplotlib:是Python的一个综合性的库,可创建静态的、动画的和可
交互的可视化图形图像,主要是偏向于二维绘图包括折线图、条形图、扇形
图、散点图、直方图等等。通过Matplotlib,开放者只需要几行代码,便可以
很快的绘图。
Wordcloud:是一款Python环境下的词云图工具包,同时支持Python2和
Python3,能通过代码的形式把关键词数据转换成直观且有趣的图文模式。
jieba:Python中文分词的组件。
pylab:它能设置画图让其能显示中文。
3
湖南商务职业技术学院毕业设计
2需求分析
2.1可行性需求分析
1.技术可行性
Python是面向对象语言中的一门较为简单、容易入门的计算机编程语言,
本次项目使用Python编写程序来实现数据获取,数据清洗、数据预处理和数据
可视化。通过抓包分析,发现古典文学网站中的唐诗大全信息页面的数据是静
态的,我们查看浏览器控制台获取请求头部信息和参数信息。然后就可以得到
网页页面数据的返回值。随后将爬取出来的初数据先以CSV格式文件储存起
来,在后续的数据预处理和数据可视化中再进行文件的调用。
2.项目可行性
社会发展的迅速,生活质量的提高,让大家已经开始想提升自己的文化底
蕴和提高精神层次,但是大部分人群,特别是中老年人群和小孩群体对于手机
的使用,大部分是不会使用,还有是使用不习惯和没有手机使用的问题,阅读
和学习古典文学还是以翻阅纸质书籍为主。人民群众迫切需要这种纸质书籍来
填补空缺,好让大家有阅读和学习古典文学的机会。
本次项目通过采集古典文学网站唐诗大全的数据,来分析唐诗的一些数据
信息。我们也将从作者、阅读量、评论等方面对其进行深度解析,分析出有价
值的信息,将其可视化最后根据结果得出结论。
2.2采集目标功能分析
本次项目的数据集的来源是古典文学网站,是通过Python爬取古典文学所
有唐诗的信息。数据清洗后共700条记录,爬取完成后需要检查数据的准确性,
确定爬取出来的数据无误并且是属于古典文学网实时存在的唐诗数据信息。
分析古典文学网页信息,明确我们需要爬取的参数有主题、内容、作者、
发表时间、阅读量、评论等数据,在对初数据进行预处理后我们会对其数据进
行多个维度的分析。例如,从作者进行分析,查看哪些作者的作品最多;又或者
根据阅读量来分析大部分人喜欢哪种类型或者是谁作的唐诗。
4
湖南商务职业技术学院毕业设计
2.3关键技术分析
2.3.1网络爬虫技术
随着互联网的大力发展,互联网称为信息的主要载体,而如何在互联网中
有效的搜集提取和利用这些信息是互联网领域面临的一大挑战。这个时候就需
要一种技术来攻克这个难题,所以应运而生,被大家称之为“网络蜘蛛、网络
机器人”的网络爬虫产生了,它是一个自动下载网页的计算机程序或自动化脚
本。爬虫分为通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫
等一些类型。爬虫最直接和常用的储存方法就是收集数据,并且和人工伪造的
会有很大的区别,爬下来的数据是不会说谎的,比如:“刷单”这种行为,使
用爬虫将数据爬取下来,是一目了然的,做不了假。爬虫还有一个天然自带的
功能,就是刷流量,当爬虫访问网站的时候,网站没有识别出来,那么就会被
当成正常访问。爬虫的主要目的就是获取网页并解析,只要达到这个目的,用
什么方法都可以。并且由于Python语法简单,极易入门等特点,爬虫在
Python这一门语言的帮助下,要入门开发爬虫几乎没有难度,而与爬虫相关的
框架更是数不胜数,稍微配置一下就能实现很好的效果。
2.3.2文件存取技术
Python内置CSV模块如图2-1所示。
图2-1Python内置CSV模块
2.3.3可视化技术
当我们储存下来的数据,数据量就像一个海洋一样,并不能一眼就得到我
们想要的结论,小时候学数学,基本上都是从图上将内容分析出来的,所以我
们就要将数据转换成图形或图像在屏幕上展示出来,再进行分析才能得到我们
所需要的结论。
1987年首次提出可视化,认为它是一种能够处理大量数据集的工具。可视
化是利用计算机图形学和图像处理技术,将数据转换成图形或图像在屏幕上显
示出来。它涉及到多个领域,成为研究数据表示等一系列问题的综合技术。
5
湖南商务职业技术学院毕业设计
3数据采集
3.1采集页面分析
我们开始通过谷歌浏览器搜索古典文学官方网页,然后找到唐诗大全页面
观察图3-1,其中URL为:/tangshi/index.html。
图3-1数据网址页面
按F12调出开发者工具,刷新页面,如图3-2所示。
图3-2开发者工具
6
湖南商务职业技术学院毕业设计
利用全局搜索工具定位所需数据位置,点击开发者工具上面的Headers字
段,分析这是个什么请求,发现这个是一个GET请求,那我们需要寻找它的头部
信息往下翻找,在最后找到了我们需要的头部信息,如图3-3所示。
图3-3请求头部信息
3.2字段分析
我们首先来到网页面打开网页的选择栏,然后将选择栏目定位到唐诗大全
的位置,也就是定位到我们所需要爬取的数据所在的位置,然后跳出开发者工
具页面刷新一下页面,再进入,点击开发者工具界面上方的数据预览Headers
按钮,如图3-4所示。
因为古典文学网是一个静态网页,所以我们可以直接使用Requests方法
中的GET方法来获得响应的数据,我们需要重复获取响应数据,可以直接将数
据依次写入到CSV格式的文件当中。
7
湖南商务职业技术学院毕业设计
图3-4分析数据类型页面
3.3编程实现
导入所需库,如图3-5所示。
图3-5导入所需库页面
设置请求头,伪装成浏览器访问服务器。使用循环对网站的数据用GET方
法将网址和请求头部添加到其中爬取网页数据,并将爬取的数据用Etree模块
来将网页解析,如图3-6所示。
图3-6请求头内容页面
8
湖南商务职业技术学院毕业设计
依据解析出来的数据,循环使用XPath定位到所需要的字段再进行分割,
得到所需要的部分并存入字典中,如图3-7所示。
图3-7循环解析代码块
9
湖南商务职业技术学院毕业设计
4数据清洗与处理
在爬取到庞大的数据集之后我们需要对数据进行一个预处理,也就是所谓
的数据清洗和检查,确定爬取过来的数据是否存在无效值和确实值,要保证数据
的一致性,这个对于信息质量的评估是一项非常重要的任务。不仅如此,我们需
要将数据进行整理、排序和筛选等操作,这样子能够在后期数据调用共享的过
程中方便很多开发人员对数据信息的使用。
本次项目中我们需要将爬下来的数据和网页原数据进行比对,并且检查是
否出现空值、错值,还有数据的位置是否正确。根据不同的需求我们要对数据
进行不同的处理。
4.1数据清洗
图4-1数据清洗准备页面
经过对照和检查,发现数据不存在缺失值,错位还有空值,那么我们根据需
求将有效数据进行保存,将不要的行列数据全部去掉,防止数据冗余。因此我
们只需保留需要的数据,然后整理为原网页格式存入data.csv文件中,留存后
续作为统计分析、数据可视化使用。
10
湖南商务职业技术学院毕业设计
图4-2数据清洗完成界面
4.2数据储存
数据储存的方法有很多种,常见的就是可以直接用记事本格式储存(txt文
件),或者直接用其他文件的形式储存,如:CSV、Excel、json等,但是以上方
法保存的数据体量普遍都比较小。如果需要储存较大的数据信息就需要用到我
们的数据库,数据库也分为关系型数据库和非关系型数据库。关系型数据库比
较典型的有MySQL和Oracle等,非关系型数据库等以键值对形式储存数据的代
表有MongoDB、Redis等,本次项目我们用到的是CSV文件格式,如图4-3所
示。
图4-3数据存储为CSV页面
11
湖南商务职业技术学院毕业设计
5数据统计与分析
5.1数据准备
导入相关库,使用pandas加载源数据,如图5-1所示。
图5-1数据准备页面
5.2数据展示
5.2.1作者统计分析
将在表格中作者的字段数据进行汇总和处理然后将其统计出现的频率,最
后生成特定序列,通过特定序列里面的数据再按照词频生成词云图,如图5-3
所示。
12
湖南商务职业技术学院毕业设计
图5-3作者发表频率
从图中可以看出“杜甫”出现的频率是最高的,其次就是“白居易”,再
者就是“李白”。从出现频率来看,“杜甫、白居易和李白”不愧唐代三大诗人
这个名声,他们的诗句已经印在时代上,深入人心,就连刚懂事的小朋友对他
们的诗句都可以倒背如流。
不仅如此,从词云图可以看出,唐代的诗人之多,处于一个人才辈出、群
英荟萃的时代,使得大家争相去了解唐代的古诗和各种文化知识。想让自己从
古诗和传统文化中,体会到当时朝代的一个大环境。
5.2.2发表次数统计分析
将在表格中发表次数的字段数据进行汇总和处理然后将其统计出现的次
数,按照每年发表次数所占百分比生成饼图,如图5-4所示。
13
湖南商务职业技术学院毕业设计
图5-4每年发表次数
以图5-4每年的发表次数中可以看出,2013发表次数的是最多的,其次
就是2012年,其他都占少数。
当时处于信息的发展期,大家都开始接触计算机,有经济头脑的人,就会
想着,大家都使用电脑,那我是不是可以做一个大家都没有做过的网站,来增
加流量来实现变现呢。当大家都开始上网的时候,做网站的人络绎不绝,都想
着靠互联网来挣第一桶金,所以当时的网站开发,应该是达到一个高潮的地
步,当大家的热度过去了,高潮也就过去了,后续大家更趋向于实用型或者的
娱乐型的网站。
14
湖南商务职业技术学院毕业设计
5.2.3发表次数统计分析
将在表格中发表次数的字段数据进行汇总和处理然后将其统计出现的次
数,按照每年平均日阅读量生成条形图,如图5-5所示。
图5-52012-2016年平均日阅读量
从图5-5中可以看出,2013年平均每日阅读量是最多的,相较于其他的几
年来说,平均的日阅读量是一个飞涨的状态。
这个原因主要可能就是因为当时信息的发展,大部分人民群众都在这两年
可以开始使用上电脑和智能手机,由于刚接触电脑和智能手机这个新事物,大
家都是想去了解和摸索,这段时间肯定使用的人数是最多的,但当这个新鲜期
一过,那么大家可能就不会对电脑和智能手机那么上心的,所以发表量直线下
降。后续对于年纪大的人和小孩来说,纸质书籍才是大家最方便的,而且还不
会有电脑和智能手机伤眼睛,并且还有部分的人是喜欢收集书籍的。
5.2.4依据每月的发表次数进行统计
将在表格中发表次数的字段数据进行汇总和处理然后将其统计出现的次
数,按照每月发表次数生成折线图,如图5-6所示。
15
湖南商务职业技术学院
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入股经营合作合同范例
- 运城2025年山西运城学院高层次人才引进笔试历年参考题库频考点试题附带答案详解
- 酒泉2025年甘肃酒泉市医疗卫生事业单位校园招聘195人笔试历年参考题库频考点试题附带答案详解
- 现售合同范例
- 合伙人承包合同范例
- 内销服装加工合同范例
- 林地赠予合同范例
- 数学好玩 有趣的推理 教学设计(教案)2024-2025学年数学 三年级下册
- 欠款 车辆质押合同范例
- 沪科版八年级物理下册教案 9.2阿基米德原理
- 理论力学-上海交通大学中国大学mooc课后章节答案期末考试题库2023年
- 风景背后的地貌学-华中师范大学中国大学mooc课后章节答案期末考试题库2023年
- 消防联动测试记录表
- 【教师必备】部编版四年级语文上册第二单元【集体备课】
- 23所行政管理博士点学校之一
- 静脉导管常见并发症临床护理实践指南1
- 学校学生劳动教育评价表
- apt攻击专项应急预案
- 小学三年级秋季学期《道德与法治》(统编版)学习任务单(全册汇总)
- 奥迪A7L汽车说明书
- 美育-美即生活 美育期末试卷及答案
评论
0/150
提交评论