这段时间热映的《狂飙》,相信很多小伙伴都在追这部剧。这部剧融入了犯罪剧的模式,增加了推理和悬疑,很多故事都是以真实事件和民生问题为素材。带动了观众的眼球。
(相关资料图)
随后,这部剧的同名书籍登上了当当网畅销榜排名。就连剧中人物高启强(张颂文饰演)最爱读的《孙子兵法》也上了当当网古籍排行的第一名。
到底是不是这样,小编带你了解下。到底是《狂飙》这部剧带火了《孙子兵法》还是另有隐情呢?今天,我们用Python来分析下。
准备工具
首先,我们需要搭建Python环境,然后安装第三方库requests、BeautifulSoup4。这里不再赘述了,网上很多这方面的介绍。
Python环境搭建好之后,我们进入主题。
思路分析
本例,我们分别获取2019年、2020年、2021年、2022年、2023年1月、2023年2月,这几个时间段的《孙子兵法》排名信息。
我们之前使用Python获取过当当网Top500畅销书排名,详情见下面链接:
Python获取当当网排行榜,高启强爱读的《孙子兵法》稳居古籍榜首
当然,这里用Python获取离不开requests和BeautifulSoup这两个库。具体方法这里不再赘述了,参考下之前的图文吧。
程序中需要注意这几个地方:
对比排行榜各个时间段的网页内容,不难发现,这些页面获取到的内容html代码都是一样的。
这里我们就可以将不同年份的网址作为一个列表,从列表中获取网址,并逐个年份写入。网址这里就不粘贴了,见源代码中url_lst列表信息。
获取网页内容时,之前的案例我们使用main()函数得到了单页内容,这里我们可以将网址作为参数,加入到main()函数中,依次遍历获取某一时间段top500排行榜内容。
写入文件时,几个print()函数至关重要。加上后,可以定位到任意出错的地方。如,使用bs4查找页面内容出错后,利用这几个print()语句可以快速定位到出错的页面条目,非常方便(当然,也可以使用try……except语句)。程序中其实只需要书名及排名信息,因此,我们修改之前的代码如下:
有了排名信息,我们通过一个折线图展现一下。如图:
分析
从图中可以看出,之前在畅销榜排名并不靠前的《孙子兵法》,2019年排名第10位,2020年到2022年之间,排名在2023年1月突然跻身排行榜第一位。
《狂飙》这部剧于2023年1月14日在中央电视台电视剧频道首播,并在爱奇艺同步播出。在第四集中,安欣去菜市场看望高启强时,提到《孙子兵法》。
由于高启强是个普通鱼贩,没文化、没背景,经常受人欺负,安欣让他多读读《孙子兵法》,提高文化素养的同时,也好做生意。
之后,《孙子兵法》成为高启强书单里最重要的读物。并且经常读这本书。在第十五集中,高启强在与弟弟高启盛的谈话中引用了孙子兵法中的“围师必阙,穷寇勿迫”。
不得不说,确实是《狂飙》这部剧,使得《孙子兵法》近日来稳居当当网古籍畅销榜第一名。
今天源代码获取方式,关注并私信“dangdangtop500pro”
喜欢Python的小伙伴关注我,后续推出更加精彩的内容。
想了解更多精彩内容,快来关注python高手养成
