实战:python分析天龙八部

为了完成伟大的工作,有两样东西是必须的,一个计划以及已经不多的时间。    伦纳德·伯恩斯坦​

大家好,我是今天的值班小编,python爱好者一枚,同时也是多年的武侠小说爱好者。

今天是正月初六了,要是按照往年的情况来看,小编应该是在回北京的火车上了;今年情况比较特殊,这几天一直宅在家里躺床上看小说。

小说

话说小编从初中时开始看金庸低武,后来逐渐过渡到高武、穿越、修仙、科幻、网游一路看下来各种小说(盗版居多)。这两天回忆了一下初中时光,准备把金庸老先生的《天龙八部》再翻出来看看。

天龙八部女主角-王语嫣

搜索一把,还真有txt小说,50章网页版的,可惜不喜欢该网站的字体,不如咱们把它抓取下来保存成本地的txt文件吧。

python爬虫

开发环境:win 10

不高兴用scrapy这类框架了(因为忘记要怎样用框架了,还要翻文档才能想起来),直接手写几段python代码吧,html的解析就交给beautiful soup了,需要先用pip安装一下。

上图中的代码很简单,主要流程是:

1)遍历页码。

2)构造url。

3)使用urllib.request发送请求并获取响应。

4) 使用beautiful soup解析html代码得到每一章的标题和正文内容。

5) 把标题和正文内容附加到本地的txt文件尾部。

cmd里面运行一下,很快的,十几秒的时间就完成了50章小说的抓取,真是让人感叹:科学技术就是第一生产力。 最终得到了2.4MB的《天龙八部.txt》。

数据分析

看完《天龙八部》之后,有一个问题在小编脑海中萦绕不去绕梁三日而不绝,那就是“天龙八部小说里面,有三个男主,萧峰、段誉、虚竹,谁的出场次数最多,谁才是金老先生最看重的男主角?”

这个问题自从小编在初中时第一次读完《天龙八部》的时候就有了,当时和同学们讨论争辩了很久,最终也是无解;现在已经学会了python的一点皮毛,可以自己尝试着写代码分析一把。

话说python代码就是简单的不要不要的,因为复杂的操作都有各种库可以调用:

代码主要流程有4步:

1)从刚抓取到的txt文件里面读出全部内容。

2)使用jieba这个库来做切词的操作。所谓“切词”就是把一段话或者一句话切割成一个一个独立的词。

由于“萧峰”在小说前期名为“乔峰”,所以要写个if语句把这两个名字给统一一下。

3)调用wordCloud库生成词云。

4)调用pyplot库把词云作为图片展示出来。

词云的效果如下:

从上面的词云里面可以看到,乔峰和段誉的出场次数不相上下,虚竹、慕容就要差一个档次了。

这里,小编要提出一个问题,朋友们可以在评论里面进行解答:为什么词云图里面没有 "的","是","我", "你" 这几个字呢?从直觉上来看,这几个字的出现频率应该是比较高的。

wordCloud库生成词云的时候,还有一个神奇的功能,可以自定义图片样式,比如下面这样,是不是很有意思呢:

词云图的优点是可以一眼就看到出现次数较多的词,直击重点一针见血,缺点就是看不到具体的数字了。还是用matplotlib画个柱状图看看吧,x轴是角色名称,y轴是出现次数:

可能有朋友区分不清楚柱状图和直方图的区别,小编这里教朋友们一招:柱状图的每个竖条之间是有间隔的,直方图则没有。

从柱状图中也可以看出,乔峰的出场次数比段誉多了那么一点点;此外,王语嫣是当之无愧的第一女主角。

分析完男女主角之后,再分析一下4个字的词,看看金老先生喜欢使用哪些4字词(或者成语):

出现次数最多的是“哈哈大笑”,“大吃一惊”,“英雄好汉”。 小编猜测了一下,可能江湖中的英雄好汉们一般为莽夫,智商普遍偏低,正常情况下就哈哈大笑,出现意外就大吃一惊。

后记

文章写到这里,也就差不多结束了,朋友们有空也可以自己写几行python代码分析一下小说或者其它文本数据。

其实小编还想训练一下模型分析一下人物关系的,但是有几个包一直安装不成功,也就先放弃了,等以后有空再做吧。

为了完成伟大的工作,有两样东西是必须的,一个计划以及已经不多的时间。    伦纳德·伯恩斯坦​

版权声明:本文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,不拥有所有权,不承担相关法律责任,转载请注明出处。本文地址:https://www.sip-server.cn/109615.html

上一篇 2023年6月24日 下午3:33
下一篇 2023年8月10日 上午10:44

相关推荐

  • 博客怎么赚钱(博客怎么样)

    您是经验丰富的博主吗?还是您只是想了解博客世界的新手?无论您站在什么立场,我们都有一个共同的目标:写出更好的博文。所以这里有一些关于如何通过 博客的伟大之处在于它在不断发展。总有新的提示和技巧可以帮助您将博客提升到一个新的水平。 什么是博客? 博客的核心是与世界分享您的想法和经验。这是一种与志趣相投的人联系的方式,也是分享您独特的声音和观点的平台。 为什么写…

    创业分享 2023年3月15日
    10500
  • 微信怎么解封账号-微信登不上去怎么办

    微信被限制了怎么解除限制?当出现了限制的提示时,往往伴随着被封号/限制的处罚,给生活和工作带来极大的影响,今天我们来讲一讲相关知识与解决方法,希望能够帮助到大家! 当出现问题时,不要惊慌和抱怨,先仔细的阅读系统限制的公告,根据公告中的相关信息先确认限制的类型。 常见的限制分为两类:“限制登录”和“限制功能”.所谓的限制登录是指账号无法登录,而限制功能是指号可…

    2023年2月2日
    8800
  • 养什么鸽子最赚钱(农村养鸽子挣钱吗)

    文/大海棠 现在社会发展的速度相信大家都是看在眼里的,除了城市,农村的发展速度其实是更加的迅速的,很多地区都逐渐摆脱贫穷,温饱问题早已解决,朝着”小康村”的方向发展。现在农村能有这么好的面貌,一是得益于有关部门对农村经济发展的大力支持,二是农民通过外出打工、创业等自身的努力,最终使得很多村子越来越好。 时代确实也是在不断进步的,21世…

    2023年3月7日 创业分享
    11100
  • 微博炫富事件(网上炫富的好处与坏处)

    最近微博上又掀起了一波“炫富挑战”热 大家纷纷脸朝地“扑街” 看似“一不小心”摔出了“全部家当” 实际上是在高调炫富 不信你看 你省吃俭用几个月买的奢侈品 人家直接摔了一地 除了网友 还有很多媒体和机构 纷纷晒出了行业的正能量 让人眼前一亮 but~ 不管炫富挑战怎么进行 都是为了博大家一笑 只是小编在这里要提醒各位看官 有些人炫富 可不单单是为了娱乐 而是…

    创业分享 2023年3月17日
    7700
  • 适合创业的小项目-2020年适合大学生创业的项目

    疫情期间,大量公司、厂房、店铺倒闭,很多人也因此失去了工作。但是,现代社会是一个多元化的社会,2023年,作为“穷人”和普通人的我们,想要谋取一份工作或者创业机会,也并非不可能,前提在于我们需要好好谋划。下面的这些创业项目投资小,而且不需要多大的投资,但是回报却是稳稳的。 1、出摊卖小吃。小吃摊不是小吃店,可以减少租金的投入。但关键是找到适合自己的经营品。因…

    2023年2月1日
    12500
  • 乔布斯死亡原因(乔布斯癌症治好了)

    一提到苹果手机,人们都会想到乔布斯。这周五(2月24日)是苹果公司创始人乔布斯的生日。众所周知,乔布斯患癌8年后去世,当时年仅56岁。很多人以为他得的是恶性胰腺癌,然后猜想肯定是因为他很有钱,所以才能活这么久,毕竟胰腺癌的平均生存期还不到1年。 其实乔布斯当年的癌症,很多人都搞错了。他得的不是胰腺癌,而是胰腺神经内分泌瘤(缩写为PNET),是一类恶性程度较低…

    2023年3月21日 创业分享
    8900
  • 网站首页被k(网站被k查询)

    大家好,我是黄大司,今天我们讲一下,网站被K的问题。 网站被K是什么意思呢?K是英文单词Kill(杀)的缩写,网站被K,意思就是网站被搜索引擎封杀了,网站被K对于站长和公司来说,都会造成比较大的流量损失,网站被K一般会出现这样一些情况:1、全站被K;2、首页被K;3、内页被K;4、快照停滞;5、快照回档;6、不放出收录;7、site网站不在首页;8、蜘蛛不抓…

    创业分享 2023年3月19日
    8200
  • 博客优化网站seo怎么写文章(文思泉什么意思)

    本篇文章我们将分享6个SEO技巧,帮助你的营销团队能更快速编写吻合优质SEO结构的内容文章。 本文节选自2022年SKUKING跨境电商数字化赋能沙龙撷英分享,根据SKUKING跨境电商研究中心编辑整理。粉丝朋友可以「点击头像,进入主页」查看往期内容中SKUKING的更多分享,获取完整行业洞察报告等资料。 当你发布的博客文章使用SEO技巧、执行策略性的撰写方…

    2023年3月14日 创业分享
    7400
  • 女性创业项目(有没有适合女性创业的项目)

    当今社会,女性的压力越来越大,不仅要和男性一样外出打拼,有时还需要背负沉重的家庭责任。但有时候压力就是动力,越来越多的女性开始走上创业的道路,期望通过创业来实现自己的人生价值。那么女性创业该选择什么项目呢?投资开店就来和大家分享四个适合女性创业的新兴创业项目。 第一、贩卖灌装氧气。慈善名人陈光标可以卖新鲜空气,那女性创业者选择贩卖氧气作为创业项目同样可行。现…

    2023年2月12日
    8900