我相信经过前三篇文章,大家已经学会了怎么下载歌词和歌曲了。看了我的文章后开始行动起来的应该都享受到音乐的福利了。问一个问题,当你疲惫时,你想提起精神来去工作或者看书,你会选择听什么歌曲让自己兴奋起来呢?如果是我,我会听选择摇滚歌曲,节奏感强,歌声高亢。那摇滚歌声究竟在表达什么呢?今天我用 Python 来告诉你。
收集歌词
我用之前文章爬取歌词的方法,爬取了中国一些摇滚歌手的歌词,选取了以下摇滚歌手的歌词:崔健、许巍、郑钧、汪峰、轮回乐队、黑豹乐队、唐朝乐队、窦唯、 高旗&超载乐队、指南针乐队。每位歌手 50 首歌左右,总结收集了 500 首歌的歌词,歌词字数有 12 万多。还不知道怎么用 Python 下载歌词的请戳下面:
以下是 500 首摇滚歌曲的歌词部分截图:
分词
歌词有了,我们直接从文件中读出来,用 jieba 库进行分词。去掉歌词中的空格,去掉作词、作曲等和歌词内容无关的内容。
看下分词后效果,选了汪峰一首歌的部分歌词。分词会把一句话尽可能分成更多的词。
制作图云
接下来把这些词做成词云,选择背景颜色为白色的图片作为背景图片,这样词云的形状才能凸显出来。定义好词云的属性值,用 matplotlib 库把词云图显示出来。话不多说,直接上代码。
我用了 2 张背景图做成了词云图,看下效果图。
摇滚歌手歌词中出现最多的词是我们、自己、世界、所有、生命、希望、寂寞、自由。看来摇滚歌手基本是自信的,他们通过摇滚表达对生命的敬畏,他们对人生充满希望,他们渴望自由的飞翔。
你也可以用上面教的方法去制作其他类型歌曲的词云,赶紧去试试吧。
在我的公众号回复「摇滚」获取全部源码。