Python 爬取 620 首虾米歌曲,揭秘五月天为什么狂吸粉?!
作者 | Yura
责编 | 胡巍巍
最近两天,我被朋友圈的五月天粉丝(五迷)疯狂刷屏,“五月天永远陪你到20岁”“演唱会即视感”,这些字眼让我恨不得马上奔到电影院打卡。
作为五迷,我是满怀激情地在写这篇文章呀(美容觉什么的先不谈了,五月天要紧)。
今天我就用Python爬一爬虾米音乐,半分析半安利地给大家介绍一下这个充满有趣灵魂的组合。
数据获取
本次爬虫主要目的是爬取五月天所有歌曲的信息,信息维度当然是越多越好啦。
直接搜索关键词“五月天”,可能会出现歌名是“五月天”的信息,或者别人翻唱“cover五月天”的内容,搜索范围变大,多抓取了不少无用信息。
所以我以“五月天-艺人-专辑信息-歌曲id-歌曲详情”这个路径进行数据爬取。我发现,无论是专辑信息、歌曲list还是歌曲详情,都存在于非常漂亮的JSON格式里面:
本来可以美滋滋“唰唰唰”地批量下载。但是!URL里面有一个s的参数,我暂时找不到变化的规律(摔!)因为赶时间,就另辟蹊径,用相对麻烦一点的beautiful soup库来解析网页源代码的内容,过程很坎坷,这就是我为什么五月天大电影上映凌晨还在写这篇文章的原因……
而且,爬虫的时候我还遇到两个坑:
1.两天前能运行的代码,在今天居然解析不到所需的内容了,因为爬取的东西内容格式发生了很大变化。难道是我正巧赶上了他们内部修改源代码的节点嘛?无从查证。
2.两天前还在显示的歌曲详情(播放量和收藏量),今天一看全都变成0了,每首歌都这样。我让别的朋友用其他电脑查看,也是没信息的。“检查”了一下,Play Count这些参数直接变成Null了…?
最后得到三个文件,分别是专辑信息(50张)、歌曲列表(620首)和歌曲详情(620首),主要是通过专辑字符和歌曲id进行相关联,具体字段如下:
专辑信息(专辑种类、ID、封面、名字、艺术家、收藏数、语言、播放数、推荐数、歌曲数量、专辑字符、评分、评分人数、发布时间)
歌曲列表(专辑名字、歌曲名字、ID、时长、播放量)
歌曲详情(歌曲名字、别名、歌曲ID、时长、播放次数、作词、作曲、编曲、专辑名字、歌词、热门第一条评论、评论点赞数)
PPPs:不成熟的代码我一定会在一周之内更新到这儿(https://github.com/PengYura)
数据清洗
国际惯例:Excel画图表+Python画词云,(自认为)简单粗暴又高效。
数据分析
截止目前在虾米音乐平台关于五月天的一共有50张专辑,其中“正正经经”的专辑有9张(“录音室专辑”),“单曲”类专辑有20张,歌曲数量在1到6首不等。
判断作品的优劣,最明显快速的方式就是查看大众对其的评分,我们来瞧瞧这50张专辑的评分分布?:
可以看到,将近一半的的专辑评分在9.8-10.0之间,只有3张专辑评分没超过9分。说明大众对其认可度还是相当高的。
五月天曾说过只会出10张专辑,随着2016年《自传》的发布,现在已经有9张跟大家见面啦。我们先看看这9张的数据情况。
按照发布时间顺序排列:
按照时间间隔可以看到,emmm,他们发专辑的间隔从1年慢慢变成2年、3年和5年,我很有理由怀疑下一张专辑可能在5年之后。
再看到发布时间的月份,4张专辑都是在7月份,其余的分布在10月、11月和12月,这…...难道是某种症(拖延症?)的体现?
据说五月天只会出10张专辑,我非常期待第10张,我也非常害怕10张之后再无新作品(那我的人生还有什么盼头)。
从评论收藏数量来看,最新专辑《自传》的播放数达7亿多次,收藏数量将近30万,推荐人数也是处于遥遥领先的地位。其次是《后青春的诗》和《第二人生》,分别占据了播放数和推荐数的第二。
但是我觉得很多别的老歌也都是很好听的呀,传唱度甚至更高。我们也可以在下面的歌曲详情分析中略窥一二?。
根据专辑信息里面的歌曲ID(字符串形式和数字形式皆可),我们可以顺藤摸瓜爬取歌曲的信息(https://www.xiami.com/song/歌曲id),一共得到620首,除去没歌词的纯音乐歌曲55首,还剩565首。
这565首歌中,时长最短的是《轻功(京片子版)》,只有25秒。但是不管怎么样,也是李大哥的《贝贝》的6倍多了(逃)。
最长的是《出头天/憨人(live)》,有12分20秒。歌曲整体时间分布还是符合正态分布的,75%的歌曲时长都在4到7分钟之间。
神奇的是,平均每首歌的播放数量也是如此的趋势:时长为5分钟的歌曲平均每首歌播放次数有219w+。所以呀,写歌还是写5分钟多的,也许这样更容易火呢~
再看看播放数量TOP20的歌曲:
虽然《自传》专辑的歌曲拥有45%(9首)的占榜率,但是耳熟能详的《突然好想你》仍然以1.5亿次的播放量稳居TOP1。
这首歌有没有让你想起你的某位故人?
前面提到了专辑种类有许多,什么录音室专辑啦,现场专辑啦,精选集啦。里面有很多歌曲是一样的,只是版本不一样。
去重之后发现还剩177首歌。我们从歌曲的创作内容来看看五月天的歌到底有什么特点。
每首歌都要经历作词、作曲和编曲的过程。在这177首歌里面,主唱阿信参加了139次作词、100次作曲,我说一句阿信是创作小王子没人反对吧!
编曲方面,68%的歌曲都是由五月天整个团队完成的,还有31首歌是有其他人参与合作的,合作次数最高的是周恒毅(8次)。
为歌词做个词云,我发现了五月天为什么总是吸引大批五好青年的原因:胸怀“世界”,心中充满”爱“,敢“想”敢“笑”,不惧“人生”和“回忆”,勇敢怀揣着“梦”想。试问谁听了这些歌曲还能安然地继续做“咸鱼”呢?
关于歌曲评论,我只简单爬取了每首歌的第一条热门评论和点赞数,你猜怎么着?点赞数最高的3条内容,其中两条内容迷之接近:
Ok,我承认,我就是为了听五月天而下载虾米的,肤浅而热烈。
文章开头提到了,五月天最近的演唱会纪实大电影《五月天人生无限公司》在昨天上映啦。
这部电影记录了五月天从2017年3月18日到2019年1月6日,415万歌迷穿过55座城市陪伴打卡的122场演唱会。我因为种种原因还没去打卡这部电影。但是,我还是忍不住去豆瓣看了大家的评论。
截止目前豆瓣评分8.9分,65%的观众给这部电影打了满分!作为400万群演之一,我觉得我很骄傲!
最后的最后,一场生活一场五月天,加入五月天永远不会太迟让我们一起迈向80岁?
作者简介:Yura,计算机科学与技术专业大四在读,因在澳洲交换学习接触了大数据,甚感兴趣。遂开公众号“Yura不说数据说”督促自己学习数据分析!欢迎大家关注我的个人公众号,一起(监督我)学习。
【END】
作为码一代,想教码二代却无从下手:
听说少儿编程很火,可它有哪些好处呢?
孩子多大开始学习比较好呢?又该如何学习呢?
最新的编程教育政策又有哪些呢?
下面给大家介绍CSDN新成员:极客宝宝(ID:geek_baby)
戳他了解更多↓↓↓
热 文 推 荐
☞ 华为至暗一周,任正非回应一切;开源代码不受美国出口管制约束;GitHub 开启赞助功能:用金钱贡献开源项目 | 开发者周刊
☞ 为什么你写了一万小时的代码,却没能成为架构师?| 程序员有话说
☞ 大神!这段代码让程序员躺赚200W,源码简单,你怎么看?
点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 习近平结束国事访问回到北京 7991054
- 2 王楚钦晋级决赛 与张本智和争冠 7912956
- 3 于东来连发11条动态 7892548
- 4 中巴经贸合作再现历史性机遇 7746072
- 5 微信14天后自动清理原图原视频 7653011
- 6 张本智和胜利后摇头晃脑庆祝 7509286
- 7 抗癌网红湘妹子去世 7423842
- 8 麦琳要用吃剩的熏鸡骨头煲汤 7306807
- 9 国乒包揽总决赛女单冠亚军 7223972
- 10 中国冰雪经济再度升温 7179209