百摩网
当前位置: 首页 生活百科

python 歌曲爬虫(一篇文章带你用Python网络爬虫实现网易云音乐歌词抓取)

时间:2023-06-14 作者: 小编 阅读量: 2 栏目名: 生活百科

前几天小编给大家分享了数据可视化分析,在文尾提及了网易云音乐歌词爬取,今天小编给大家分享网易云音乐歌词爬取方法。本文的目的是获取网易云音乐的歌词,并将歌词存入到本地文件。But在网易云音乐网站中,这条路行不通,因为网页中的URL是个假URL,真实的URL中是没有/#号的。本文利用requests、bs4、json和re模块来采集网易云音乐歌词,记得在程序中添加headers和反盗链referer以模拟浏览器,防止被网站拒绝访问。

前几天小编给大家分享了数据可视化分析,在文尾提及了网易云音乐歌词爬取,今天小编给大家分享网易云音乐歌词爬取方法。 本文的总体思路如下: 找到正确的URL,获取源码; 利用bs4解析源码,获取歌曲名和歌曲ID; 调用网易云歌曲API,获取歌词; 将歌词写入文件,并存入本地。 本文的目的是获取网易云音乐的歌词,并将歌词存入到本地文件。整体的效果图如下所示:

本文以民谣歌神赵雷为数据采集对象,专门采集他的歌曲歌词,其他歌手的歌词采集方式可以类推,下图展示的是《成都》歌词。

一般来说,网页上显示的URL就可以写在程序中,运行程序之后就可以采集到我们想要的网页源码。But在网易云音乐网站中,这条路行不通,因为网页中的URL是个假URL,真实的URL中是没有/#号的。废话不多说,直接上代码。

本文利用requests、bs4、json和re模块来采集网易云音乐歌词,记得在程序中添加headers和反盗链referer以模拟浏览器,防止被网站拒绝访问。这里的get_html方法专门用于获取源码,通常我们也要做异常处理,未雨绸缪。获取到网页源码之后,分析源码,发现歌曲的名字和ID藏的很深,纵里寻她千百度,发现她在源码的294行,藏在下图的标签下,如下图所示:

接下来我们利用美丽的汤来获取目标信息,直接上代码,如下图:

此处要注意获取ID的时候需要对link进行切片处理,得到的数字便是歌曲的ID;另外,歌曲名是通过get_text()方法获取到的,最后利用zip函数将歌曲名和ID一一对应并进行返回。得到ID之后便可以进入到内页获取歌词了,但是URL还是不给力,如下图:

虽然我们可以明白的看到网页上的白纸黑字呈现的歌词信息,但是我们在该URL下却无法获取到歌词信息。小编通过抓包,找到了歌词的URL,发现其是POST请求还有一大堆看不懂的data,总之这个URL是不能为我们效力。那该点解呢?莫慌,小编找到了网易云音乐的API,只要把歌曲的ID放在API链接上便可以获取到歌词了,代码如下:

在API中歌词信息是以json格式加载的,所以需要利用json将其进行序列化解析出来,并配合正则表达式进行清洗歌词,如果不用正则表达式进行清洗的话,得到原始的数据如下所示(此处以赵雷的歌曲《成都》为例):

很明显歌词前面有歌词呈现的时间,对于我们来说其属于杂质信息,因此需要利用正则表达式进行匹配。诚然,正则表达式并不是唯一的方法,小伙伴们也可以采取切片的方式或者其他方法进行数据清洗,在此就不赘述了。得到歌词之后便将其写入到文件中去,并存入到本地文件中,代码如下:

现在只要我们运行程序,输入歌手的ID之后,程序将自动把该歌手的所唱歌曲的歌词抓取下来,并存到本地中。如本例中赵雷的ID是6731,输入数字6731之后,赵雷的歌词将会被抓取到,如下图所示:

之后我们就可以在脚本程序的同一目录下找到生成的歌词文本,歌词就被顺利的爬取下来了。相信大家对网易云歌词爬取已经有了一定的认识了,不过easier said than down,小编建议大家动手亲自敲一下代码,在实践中你会学的更快,学的更多的。这篇文章教会大家如何采集网易云歌词,那网易云歌曲如何采集呢?且听小编下回分解~~~

想学习更多Python网络爬虫与数据挖掘知识,可前往专业网站:http://pdcfighting.com/

    推荐阅读
  • 跑步后吃什么补充体力 跑步前要吃什么才能补充力量

    富含蛋白质的食物跑步后是容易感到疲劳的,而跑步后补充一些含有蛋白质的食物,不仅对肌肉肝糖恢复和肌肉合成有帮助,还能帮助缓解劳累。含碳水化合物的食物碳水化合物的食物像面条、土豆、米饭、面部等,在跑步后食用,是可以迅速的给身体补充能量,帮助体力尽快恢复的。紫葡萄紫葡萄中是含有花青素的,有着比较好的抗氧化和抗炎的作用,在跑步后吃点紫葡萄可以帮助恢复体力,也能减轻因跑步引起的肌肉和关节炎症。

  • 怎样学会挑选西兰花(选大的还是选小的)

    我们怎样在市场才能买到好的西兰花呢?小贴士:西兰花买回来要掐成小朵,放在淡盐水中浸泡10分钟,消毒杀菌,再用流动水冲洗干净,就可以开始烹饪了。

  • 小米怎么煮才粘稠(煮小米粘稠的技巧)

    小米怎么煮才粘稠?小米怎么煮才粘稠小米淘一遍就可以了,容器最好是砂锅,不要再多淘,米要多放煮的时候一定要急火、猛火煮,而且有一定的时间,注意多加水。水烧开后再倒入洗好的小米,大火烧开后,撇净表面的浮沫。开水下米,这样米不粘锅,而且小米容易开花容易熟,并且有助于增加粥的粘稠度。点几滴食用油,然后转小火,盖锅盖留缝隙煮25分钟。滴食用油的原因第一是为了防溢,第二是为了增香增稠。

  • cad中半径标注设置(其实很简单)

    以下内容大家不妨参考一二希望能帮到您!调用半径标注命令,先用鼠标在要标注的对象上点击,便出现半径尺寸,再移动鼠标确定半径尺寸的位置,便标注好了。在调用半径标注命令后,点击圆时,命令栏会出现提示。指定尺寸线位置或[多行文字/文字/角度]。角度:输入A,回车键或空格键,输入角度值45,回车键或空格键,标注值便以45度角放置。

  • 汽车制动踏板是什么意思哦(汽车的制动踏板是什么意思)

    中低速行驶时的紧急制动:双手紧握转向盘,快速踏下离合器踏板,几乎同时踏下制动踏板,采取一脚踏死的方法,使车迅速停止。车轮抱死后,前轮转向即失去控制,车身易侧滑;3、联合制动。变速杆在挡内放松油门踏板,利用发动机转速牵阻降低车速,同时踏下制动踏板使车轮制动,这种靠发动机牵阻和车轮制动器制动来减速的方法称为联合制动。另外,气制动装置因进气量不易掌握也可使用快速间歇性制动。

  • 什么叫心理素质好(心理素质好是什么意思)

    情绪控制的比较好。表情也管理的非常到位。在不可预知的该要发生的事情,或喜或悲,当意外来临的时候,有处变不惊的大将风度,能够正确的,冷静的面对突发其来的一切。心理素质好的人,一般抗打击能力都非常强。是在经过无数次风雨冲击后的坚强与淡定。有着讲好的人际关系让人感觉到非常舒服。做到不急不躁不骄,既没有达官贵人的趾高气扬,也没有普通老百姓的怨天尤人。能够低调,平和,平静。做到这些就是自己的生命中的贵人。

  • 消息免打扰是不是拒收(微信消息免打扰会显示拒收吗)

    微信免打扰不会拒收消息,只是不会提醒新消息,进入设置里开启免打扰即可。操作步骤如下:1、打开微信,在通讯录里找到好友,点击打开聊天窗口;2、在聊天窗口点击对方头像进入设置,点击免打扰开启即可;3、同样地,在群聊窗口点击右上角图标进入群设置,往下拉看到消息免打扰,点击开启即可打开群消息免打扰。

  • 最好的炒饭机(美国4个年轻人发明了自动炒饭机)

    最好的炒饭机许多人都相信未来是人工智能的时代,许多重复的工作都会被机器人所取代,到时候,人们的生活就会更加轻松,但与此同时,也会有一大部分的人会失业,其实不用到未来,现在许多的行业,都已经被机器所取代了。另外,这种机器的使用也可以改变饭店的运行方式,自动炒饭机完全可以放在顾客看得到的地方,这么一来,顾客要吃的炒饭就能够清楚的看到,顾客也吃得更加的安心,这也会给饭店带来更好的收入。

  • 2022南京开学第一课在线直播时间+入口(南京开学第一课直播2021)

    2022年9月2日晚,由中共南京市委宣传部、市文明办、市教育局联合主办的喜迎二十大筑梦向未来——2022年南京市开学第一课示范活动将在南京电视台少儿频道播出。喜迎二十大筑梦向未来2022年9月2日20:00南京电视台少儿频道;牛咔视频APP>>>相关阅读推荐:2022年江苏省开学第一课直播时间+入口(含回放);2022年开学第一课直播时间+入口

  • 葫芦娃的爷爷叫啥名字(葫芦娃的爷爷叫什么名字)

    主要有以下几点原因:大禹治水三过家门而不入,但是与妻子在外野战,妻子怀孕望夫归,最终变成了望夫石石头!孙悟空破石而出,封为齐天大圣,让摘桃七仙女怀孕生下七个儿子,玉帝碍于面子只好把他们变成七彩葫芦籽,设法还给大禹,所以葫芦娃一-出来就喊爷爷!因为孙悟空糟蹋了七仙女,还生下七个娃。而且最后葫芦娃也变成了石头,这绝逼是遗传孙悟空!