前几天小编给大家分享了数据可视化分析,在文尾提及了网易云音乐歌词爬取,今天小编给大家分享网易云音乐歌词爬取方法。 本文的总体思路如下: 找到正确的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/

一篇文章带你用Python网络爬虫实现网易云音乐歌词抓取相关推荐

  1. python网络爬虫网易云音乐_一篇文章带你用Python网络爬虫实现网易云音乐歌词抓取...

    标签下,如下图所示: 接下来我们利用美丽的汤来获取目标信息,直接上代码,如下图: 此处要注意获取ID的时候需要对link进行切片处理,得到的数字便是歌曲的ID:另外,歌曲名是通过get_text()方 ...

  2. 手把手教你用Python网络爬虫获取网易云音乐歌曲

    前天给大家分享了用Python网络爬虫爬取了网易云歌词,在文尾说要爬取网易云歌曲,今天小编带大家一起来利用Python爬取网易云音乐,分分钟将网站上的音乐down到本地. 跟着小编运行过代码的筒子们将 ...

  3. 一篇文章教会你使用Python网络爬虫下载酷狗音乐

    [一.项目背景] 现在的听歌软件动不动就是各种付费,要下载软件才能听,当你下载了之后,你会惊奇的发现这首歌还收费,这就让一向喜欢白嫖的小编感到很伤心了.于是,小编冥思苦想,终于让我发现了其中的奥秘,一 ...

  4. 小猿圈分享利用python网络爬虫获取网易云歌词

    今天小猿圈给大家分享网易云音乐歌词爬取方法. 本文的总体思路如下: 找到正确的URL,获取源码: 利用bs4解析源码,获取歌曲名和歌曲ID: 调用网易云歌曲API,获取歌词: 将歌词写入文件,并存入本 ...

  5. 利用Python网络爬虫实现对网易云音乐歌词爬取

    今天小编给大家分享网易云音乐歌词爬取方法. 本文的总体思路如下: 找到正确的URL,获取源码: 利用bs4解析源码,获取歌曲名和歌曲ID: 调用网易云歌曲API,获取歌词: 将歌词写入文件,并存入本地 ...

  6. 一篇文章教会你利用Python网络爬虫获取电影天堂视频下载链接

    [一.项目背景] 相信大家都有一种头疼的体验,要下载电影特别费劲,对吧?要一部一部的下载,而且不能直观的知道最近电影更新的状态. 今天小编以电影天堂为例,带大家更直观的去看自己喜欢的电影,并且下载下来 ...

  7. python网络爬虫_一篇文章教会你利用Python网络爬虫获取穷游攻略

    点击上方"IT共享之家",进行关注 回复"资料"可获赠Python学习福利 [一.项目背景] 穷游网提供原创实用的出境游旅行指南.攻略,旅行社区和问答交流平台, ...

  8. 一篇文章教会你利用Python网络爬虫实现豆瓣电影采集

    点击上方"IT共享之家",进行关注 回复"资料"可获赠Python学习福利 [一.项目背景] 豆瓣电影提供最新的电影介绍及评论包括上映影片的影讯查询及购票服务. ...

  9. 一篇文章教会你利用Python网络爬虫获取素材图片

    点击上方"IT共享之家",进行关注 回复"资料"可获赠Python学习福利 [一.项目背景] 在素材网想找到合适图片需要一页一页往下翻,现在学会python就可 ...

  10. 一篇文章教会你利用Python网络爬虫获取分类图片

    点击上方"IT共享之家",进行关注 回复"资料"可获赠Python学习福利 [一.项目背景] 博海拾贝是一支互联网从业者在线教育的团队,扎根于中国教育行业以及互 ...

最新文章

  1. 力扣(LeetCode)刷题,简单题(第4期)
  2. java 字母图形_Java字母图形
  3. 牛逼啊!一个可以随时随地写Python代码的神器
  4. E数据结构实验之查找五:平方之哈希表
  5. Leetcode--268. 缺失数字
  6. 高效能人士的七个习惯_有史以来最具影响力管理类书籍 高效能人士的七个习惯 让你成为一名成功高效的人士...
  7. 阿里淘宝:“杀死”拼多多!
  8. python 谷歌翻译接口_谷歌翻译python接口
  9. [转帖]SAP S/4 HANA与SAP Business Suite/R3(ECC)的区别
  10. ISO7637-2瞬态浪涌波形详解
  11. codeblocks17.12安装及汉化
  12. Android模拟器6.0,逍遥安卓模拟器新版6.0.0 刺激战场手游流畅不卡专版
  13. maven运行Error:(3, 14) java: 程序包不存在
  14. 外贸开发信各国发送的最佳时间
  15. thinkPad电脑无人操作时休眠设置
  16. 表格中合并同类项并求和(物料统计) 并去除数据中的公式项
  17. 2017 谷歌 I/O大会
  18. android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
  19. 均匀分布 卡方分布_【Math】概率论常用分布大全
  20. spring配置文件中引入其他的配置文件

热门文章

  1. matlab 高维矩阵转置,matlab中关于矩阵的转置
  2. c语言的异步回调函数,C语言函数的回调函数
  3. 企业认证CMMI都需要那些流程?
  4. 【Python自动化Excel】pandas处理Excel数据的基本流程
  5. 图片的四种格式.jpg、.gif、.png、.bmp
  6. Python自学记录--steam密码加密逆向
  7. 华为交换机配置console口和telnet密码实例
  8. 扣丁软件测试基础知识,总结钢筋工程266问,包你从入门到放弃,建议收藏
  9. 福特dms系统服务器,长安福特DMS使用规范.pdf
  10. 毛星云opencv之用鼠标进行交互操作