基于python的诗歌数据挖掘与分析

本文介绍了一个基于Python的诗歌数据挖掘项目,通过爬虫获取互联网上的诗歌,使用jieba进行分词处理,结合自然语言处理技术进行情感分析和数据分析,最后通过可视化展现诗歌的特征。项目分为数据获取、数据挖掘、数据分析和数据可视化四个阶段,旨在传播中华传统文化并提升文化认知。
摘要由CSDN通过智能技术生成

收藏关注不迷路


前言

  为了提高中华民族对传统文化的认识和中国人民的文化信心,对诗词歌赋进行数据分析,并理解和分析诗词歌赋其中博大精深的生活哲理是非常有必要的。该设计基于python通过对互联网上的诗歌进行爬取,将其下载到本地,利用python里的第三方模块对诗歌的相关信息做相关处理,并制作图片使信息更加直观的显现出来,用pycharm软件作为该项目的编程工具,采取python语言进行开发,利用各式各样的第三方库实现。呈现出诗歌各个方面的信息,读者可以从中看到很多诗歌的特点和诗歌之间所蕴含的联系,并了解到其中的生活哲理,这样既有利于传播发扬中华民族的传统文化,又有利于推动中华民族的伟大复兴梦的顺利实现。

关键词:Python;Jieba分词;自然语言处理;情感分析;数据分析,数据挖掘;诗歌分析。

一、功能介绍

   (1)数据获取:通过百度获取到诗歌所在网址。
(2)数据挖掘:通过编写python代码将互联网上的诗歌爬取到本地硬盘中。
(3)数据分析:通过编写python代码对本地硬盘中的诗歌进行数据处理和分析,从各个角度剖析诗歌。
(4)数据可视化:通过编写python代码将处理和分析过的诗歌进行可视化处理。

项目功能模块设计

数据获取阶段、数据爬取阶段、数据分析阶段、数据可视化阶段是该项目系统的四大模块。数据准备阶段包含信息查询与信息收集。数据爬取阶段包括将诗歌爬取。数据分析模块包括诗歌预处理阶段和诗歌分析阶段。数据可视化模块就是指将数据进行可视化处理。
(1)数据获取:通过百度获取到诗歌所在网址。
(2)数据挖掘:通过编写python代码将互联网上的诗歌爬取到本地硬盘中。
(3)数据分析:通过编写python代码对本地硬盘中的诗歌进行数据处理和分析,从各个角度剖析诗歌。
(4)数据可视化:通过编写python代码将处理和分析过的诗歌进行可视化处理。如图3.1-1所示。
在这里插入图片描述

项目逻辑模型设计

项目中所包含的模型有诗歌模型,诗歌模型里具有网址,类别,主体,分词内容,而主体里是诗歌的主要内容,包括作者、诗名、朝代及诗文内容。如图3.2-1所示。

在这里插入图片描述

二、开发环境

  本项目使用python作为开发语言,使用request、jieba、BeautifulSoup、matplotlib等第三方库,采用PyCharm来开发项目。在项目实现的过程中严格按照软件工程的开发方法来进行的。首先收集和查阅与该项目相关的知识,其次调查分析需求做出需求分析。然后对项目做出详细的分析、列出功能模块,最后逐步实现每个功能模块。
  项目的实现需要编程能力,所以在完成项目功能的分析之后,需要进行代码的编写。整个项目设计完成之后需要进行测试,不仅要对该项目的各个模块块进行独立的测试,还需要将该项目的所有模块集成在一起进行统一的测试。所有的模块测试完毕,设计能够正常运行之后,整个设计才算完全实现

————————————————

三、程序设计

3.1 数据获取模块测试

3.1.1诗歌格式与链接分析

  诗歌总网址为https://so.gushiwen.org,所以我们将其定义为the_main_page_url,例如某页面为https://so.gushiwen.org/gushi/shijing.aspx,我们将其写作the_main_page_url/gushi/shijing.aspx。
  我们通过主页the_main_page_url找到唐诗三百首进入,可以得到所有唐诗所在网址为the_main_page_url/gushi/tangshi.aspx。如图4.3.1-1所示。
在这里插入图片描述

图4.3.1-1
    点击F12进入开发者模式,点击左上角的鼠标按钮后点击一首诗歌右边会指向该诗歌所在的html代码和该诗歌的相关信息。如图4.3.1-2、图4.3.1-3所示。
在这里插入图片描述

图4.3.1-2
在这里插入图片描述

图4.3.1-3
  通过观察,我们可以看到这首诗歌的相关信息。从中可以得出名字为《行宫》,作者为元稹。根据所有诗歌所在的网址为the_main_page_url/gushi/tangshi.aspx和指向的信息可以得到该诗歌所在的网址the_main_page_url/shiwenv_45c396367f59.aspx。通过点击其他几首诗歌可以得到the_main_page_url/shiwenv_c90ff9ea5a71.aspx、  the_main_page_url/shiwenv_5917bc6dca91.aspx。所以可以得出诗歌所在的网址模板是以the_main_page_url为前缀,加上自己信息中的href=“/shiwenv_xxx.aspx” 就可以得到该诗歌所在的网址。于是我们进入一首诗歌的网址,例如the_main_page_url/shiwenv_c90ff9ea5a71.aspx,按键盘上的F12进入开发者模
式,信息如图4.3.1-4、图4.3.1-5所示。
在这里插入图片描述

图4.3.1-4
在这里插入图片描述

图4.3.1-5
  通过点击elements可以获得上图4.3.1-5中的全部内容。
  从中我们可以看到该诗歌的名字、作者、朝代及其内容。诗歌的名字位于标签h1内,作者位于class为source的p标签里第一个a标签内,例如该作者的名称为元稹,朝代位于class为source的p标签里的第二个a标签内的小括号内,可以看到该诗人所属朝代为唐代,诗歌内容位于class为contson的div标签内,所以找到以上内容,在通过规则过滤,则可以找到,该诗歌的全部信息。同理,作者个人主页为the_main_page_url/authorv_201a0677dee4.aspx。
于是我们进入作者主页,并进入开发者模式,如图4.3.1-6、图4.3.1-7所示。
在这里插入图片描述

图4.3.1-6
在这里插入图片描述

图4.3.1-7

  过其他函数我们依然可以画出很多图,给我们提供很多信息,例如图4.5-4所示。其函数为ciyun()。从下面这张图中,我们可以看到其中字越大的则表示在诗中出现的越多,例如描写人物的有人、君、客等,于是我们可以联想到思乡之情,比如贺知章的《回乡偶书》中的“笑问客从何处来”,表达了诗人对家乡的思念,以至于很久回来家乡的小孩已经不认识自己了;描写景物的有日、月、云,于是我们可以联想到杜牧的《泊秦淮》中的“烟笼寒水月笼沙”,描写了朦胧迷离,烟雾缭绕,天气寒冷的美妙场景;描写季节的有春、秋…例如杜甫《蜀相》中的“映阶碧草自春色”,表现出春天万物复苏,草色青葱的美好景色,王勃《送杜少府之任蜀州》里的“海内存知己”,表达了诗人与故友之间深厚的友谊。随意一瞥,就能看见几个关键字,只要一看到这张图,各种耳熟能详的诗歌就会从脑子里冒出来。

在这里插入图片描述

图4.5-4

四、结论

  本设计主要实现了一个使用python进行编写代码,对诗歌进行挖掘和分析的项目,成功达到了设计初期的目标。从中可以获取到很好的中华民族传统文化知识和一部分python相关学习代码,主要采取了python里的非常方便的模块,例如matplotlib库等,并选取以pyCharm作为编写代码软件。该设计有利于传播的中华历史文化,促进全球文化的发展。在这个信息化的时代里,网络上的信息传播会更加提高中华文化的传播速度和影响力。
  经过测试该设计实现了(1)数据获取:通过百度获取到诗歌所在网址。(2)数据挖掘:通过编写python代码将互联网上的诗歌爬取到本地硬盘中。(3)数据分析:通过编写python代码对本地硬盘中的诗歌进行统计与分析,从各个角度剖析诗歌。(4)数据可视化:通过编写python代码将处理和分析过的诗歌形成各种样式的图片,从而直观的呈现出小小的唐诗里所蕴含的大大的“能量”。
  但该设计有一定的不足,但还是完整的将此设计开发出来,但还有提升的空间,例如爬取更多朝代、更多诗人的诗歌,或者诗人所有的名句,对它们进行分析,尝试通过各种图来对诗歌进行可视化处理等,这样可以了解到更多的诗人和诗歌及其当时写作诗歌时候的心情和环境,也可以帮助统计诗歌内容,从中获取更多的信息。

目录

目录
摘要 I
基于python的诗歌数据挖掘与分析1
Data mining and analysis of poetries on python2
1 引言3
2 项目概要设计4
2.1 项目设计思路4
2.2 开发工具及开发环境介绍4
2.2.1 PyCharm开发软件介绍4
2.2.2 Jieba模块介绍4
2.2.3 requests模块介绍5
2.2.4 BeautifulSoup模块介绍5
2.3 项目可行性分析5
2.3.1 技术可行性5
2.3.2 经济可行性5
2.3.3操作可行性6
3 项目总体设计7
3.1 项目功能模块设计7
3.2 项目逻辑模型设计7
3.3 项目物理结构设计8
4 项目详细设计与实现9
4.1 项目实现概述9
4.2 项目环境搭建9
4.2.1 python安装9
4.2.2 PyCharm安装9
4.2.3 第三方库安装9
4.3 数据获取模块测试10
4.3.1诗歌格式与链接分析10
4.4 数据挖掘模块测试14
4.4.1 代码编写14
4.4.2 模块整体测试16
结 论24
致 谢25

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值