今天小编给大家分享网易云音乐歌词爬取方法。

本文的总体思路如下:

找到正确的URL,获取源码;

利用bs4解析源码,获取歌曲名和歌曲ID;

调用网易云歌曲API,获取歌词;

将歌词写入文件,并存入本地。

本文的目的是获取网易云音乐的歌词,并将歌词存入到本地文件。整体的效果图如下所示:

赵雷的歌曲

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

赵雷歌曲---《成都》

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

获取网页源码

本文利用requests、bs4、json和re模块来采集网易云音乐歌词,记得在程序中添加headers和反盗链referer以模拟浏览器,防止被网站拒绝访问。这里的get_html方法专门用于获取源码,通常我们也要做异常处理,未雨绸缪。

获取到网页源码之后,分析源码,发现歌曲的名字和ID藏的很深,纵里寻她千百度,发现她在源码的294行,藏在

  • 标签下,如下图所示:

歌曲名和ID存在的位置

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

获取歌曲名和ID

此处要注意获取ID的时候需要对link进行切片处理,得到的数字便是歌曲的ID;另外,歌曲名是通过get_text()方法获取到的,最后利用zip函数将歌曲名和ID一一对应并进行返回。

得到ID之后便可以进入到内页获取歌词了,但是URL还是不给力,如下图:

歌词的URL

虽然我们可以明白的看到网页上的白纸黑字呈现的歌词信息,但是我们在该URL下却无法获取到歌词信息。小编通过抓包,找到了歌词的URL,发现其是POST请求还有一大堆看不懂的data,总之这个URL是不能为我们效力。那该点解呢?

莫慌,小编找到了网易云音乐的API,只要把歌曲的ID放在API链接上便可以获取到歌词了,代码如下:

调用网易云API并解析歌词

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

原始数据

很明显歌词前面有歌词呈现的时间,对于我们来说其属于杂质信息,因此需要利用正则表达式进行匹配。诚然,正则表达式并不是唯一的方法,小伙伴们也可以采取切片的方式或者其他方法进行数据清洗,在此就不赘述了。

得到歌词之后便将其写入到文件中去,并存入到本地文件中,代码如下:

写入文件和程序主体部分

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

程序运行结果

之后我们就可以在脚本程序的同一目录下找到生成的歌词文本,歌词就被顺利的爬取下来了。

相信大家对网易云歌词爬取已经有了一定的认识了,不过easier said than down,小编建议大家动手亲自敲一下代码,在实践中你会学的更快,学的更多的。

这篇文章教会大家如何采集网易云歌词,那网易云歌曲如何采集呢?且听小编下回分解~~~

python下载网页歌词_利用Python网络爬虫抓取网易云音乐歌词相关推荐

  1. python爬取歌词_利用Python网络爬虫抓取网易云音乐歌词

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

  2. python3爬取网易云歌单数据清洗_如何利用Python网络爬虫爬取网易云音乐歌词

    赵雷的歌曲 本文以民谣歌神赵雷为数据采集对象,专门采集他的歌曲歌词,其他歌手的歌词采集方式可以类推,下图展示的是<成都>歌词. 赵雷歌曲---<成都> 一般来说,网页上显示的U ...

  3. 如何用Python网络爬虫爬取网易云音乐歌词

    前几天小编给大家分享了数据可视化分析,在文尾提及了网易云音乐歌词爬取,今天小编给大家分享网易云音乐歌词爬取方法. 本文的总体思路如下: 找到正确的URL,获取源码: 利用bs4解析源码,获取歌曲名和歌 ...

  4. python网络爬虫网易云音乐下载_python网络爬虫爬取网易云音乐

    #爬取网易云音乐 url="https://music.163.com/discover/toplist" #歌单连接地址 url2 = 'http://music.163.com ...

  5. python爬虫网易云音乐最热评论并分析_Python3实现爬虫抓取网易云音乐的热门评论分析(图)...

    这篇文章主要给大家介绍了关于Python3实战之爬虫抓取网易云音乐热评的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧. ...

  6. python爬歌词_python爬虫抓取某易云音乐歌词,从此不在下载

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:企鹅号小编 ( 想要学习Python?Python学习 ...

  7. python爬虫网易云音乐评论最多的歌_Python3实战之爬虫抓取网易云音乐的热门评论...

    前言 之前刚刚入门python爬虫,有大概半个月时间没有写python了,都快遗忘了.于是准备写个简单的爬虫练练手,我觉得网易云音乐最优特色的就是其精准的歌曲推荐和独具特色的用户评论,于是写了这个抓取 ...

  8. python3爬取网易云歌单数据清洗_利用Python网络爬虫抓取网易云歌词

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

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

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

  10. 如何用Python网络爬虫爬取网易云音乐歌曲

    今天小编带大家一起来利用Python爬取网易云音乐,分分钟将网站上的音乐down到本地. 跟着小编运行过代码的筒子们将网易云歌词抓取下来已经不再话下了,在抓取歌词的时候在函数中传入了歌手ID和歌曲名两 ...

最新文章

  1. Win2003下Exchange2003部署图解之二
  2. 教学思路SQL之入门习题《学生成绩》 二、基础单表查询
  3. 别人不让你发传单怎么办?
  4. thinkphp mysql exp_thinkphp备份数据库的方法分享
  5. Linux系统:centos7下搭建Nginx和FastDFS文件管理中间件
  6. 9206-1117-课堂笔记
  7. java 根号_没见过的 Java 入门教程之三!例程使用中文标识符代码:各种变量
  8. J-CUBE Appears at AVATAR Xprize at Geneva 2019
  9. [Java] 蓝桥杯ADV-203 算法提高 8皇后·改
  10. C语言程序设计:现代方法(第2版)第二章全部习题答案
  11. 【python】ssh密码字典攻击
  12. matlab 入射线反射线,ray 射线追踪的仿真小程序最多可以模拟三次反射, 出 图 matlab 272万源代码下载- www.pudn.com...
  13. Linux系统之安装mariadb方法
  14. 安装Microsoft Office - Win系统
  15. 盒子科技笔试Java_丰巢科技 Java高级笔试面试题 PDF 下载
  16. TI CC3200 launchpad 简介
  17. 优思学院:质量管理七大手法,就是六西格玛的起点
  18. webbench安装过程
  19. 收藏图片网址https://www.easyicon.net/iconsearch/down/
  20. 异或 ^ 的几个作用

热门文章

  1. Java小程序:单循环比赛,总分高者获胜的源代码
  2. php清空session值_php注销session变量和销毁session详细分析
  3. PDF417数据容量
  4. 【FPGA基础】四位二进制--格雷码转换器(vivado)
  5. Himall商城普通帮助类(二)
  6. Termux字体大小调整
  7. 【GPU精粹与Shader编程】(六) 《GPU Gems 3》:真实感皮肤渲染技术总结
  8. 用简道云做一个可以账号密码登陆和找回密码并查询修改已填信息的公开表单
  9. 关于java就业的简历模板,工作一年java简历模板
  10. 杰魔(Geomagic Design)逆向工程软件学习0-产品逆向工程介绍