网易云音乐

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

赵雷的歌曲

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

赵雷歌曲---《成都》

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

获取网页源码

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

歌曲名和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学习交流扣扣群,181125776,进群的验证码是:小王子,欢迎大家的加入~~
欢迎拍砖,_祝大家周末愉快_

基于Python网易云音乐歌词爬取相关推荐

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

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

  2. python 网易云音乐评论爬取3

    参考链接: 解析网易云音乐的加密方式 https://www.jianshu.com/p/069e88181488 找到参数的加密方法 首先我们先看评论的加载方式,打开一首音乐的主页,然后打开开发工具 ...

  3. python爬取网易云音乐_Python 从零开始爬虫(七)——实战:网易云音乐评论爬取(附加密算法)...

    前言 某宝评论区已经成功爬取了,jd的也是差不多的方法,说实话也没什么好玩的,我是看上它们分析简单,又没加密才拿来试手的.如果真的要看些有趣的评论的话,我会选择网易云音乐,里面汇聚了哲学家,小说家,s ...

  4. php 爬取一个人的网易云评论,网易云音乐评论爬取

    # coding=gbk import requests import json c='网易云爬虫实战一' print(c) music_url = 'https://music.163.com/#/ ...

  5. python3爬虫进阶之自动登录网易云音乐并爬取指定歌曲评论

    ** python3爬虫进阶之自动登录网易云音乐并爬取指定歌曲评论 ** 一.访问网易云首页,找到所需元素的位置 用浏览器打开网易云首页https://music.163.com/之后,发现我们要找的 ...

  6. python爬虫----网易云音乐歌曲爬取并存入Excel

    因为数据要存入Excel中,所以首要目标是找个办法将数据能够存入excel中 经过在网上一番搜索后,发现用python里的xlwt模块可以比较容易的解决 一.准备工作 1.安装xlwt模块: 可以看h ...

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

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

  8. python爬取音乐_利用Python对网易云音乐进行爬取!无所不爬的爬虫啊!

    今天,我们利用Python 中的selenium爬取网易云音乐中林俊杰<将故事写成我们>的评论,具体界面如下: 私信小编01 获取数十套PDF!爬虫 web都有的呢! 具体代码如下: #此 ...

  9. python爬取网易云音乐_爬取网易云音乐评论(一)——用python执行JS脚本

    抓包分析 可以发现网页是post请求,表单数据有两个参数params和encSecKey,应该是经过js加密所得 因此在 Initiator 栏里找到对应的js,也就是core...js,点击打开查看 ...

  10. Python爬虫-网易云音乐自动化爬取下载

    文章目录 前言 爬取分析 完整代码 爬取效果 拓展代码 前言 上一篇简述了如何使用 Python 爬虫自动爬取CSDN博客排行榜数据并自动整理成Excel文件,这篇文章来看看如何自动化爬取网易云音乐的 ...

最新文章

  1. Python对函数求偏导数
  2. python 线程异步执行踩坑
  3. 强一致性和弱一致性的区别
  4. C++中友元函数,友元类数详解
  5. LeetCode:Remove Nth Node From End of List 移除链表倒第n项
  6. python语言中list和tuple有什么区别_python之list与tuple的区别
  7. how to use automake to build files
  8. 信捷plc编程100例梯形图_PLC分类组成与梯形图编程语言
  9. matlab 小波变换程序,matlab 小波变换
  10. Excel翻译单元格内容
  11. Linux变量的定义、赋值、查看、删除(export、echo、unset)
  12. 机器学习——神经网络模型
  13. 30个源码网站的网址
  14. FFmpeg编译报nasm/yasm not found or too old. 错误解决
  15. 有赞996反省:男程序员们,别再低头写代码了(上)
  16. 路由器android-267d3f,这才是真的高级货玩意:NETGEAR EX7700 AC2200三频无线Mesh扩展器使用体验...
  17. android ab 广告,秒针移动广告监测指南(Android版)
  18. 学习笔记(02):华为工程师,带你实战C++视频精讲-Day1王桂林老师原创视频-C++函数重载原理...
  19. D NHK协会的阴谋
  20. 用python画一只可爱的布朗熊

热门文章

  1. KVM或openstack虚拟化环境中windows主机忘记登陆密码如何使用pe的方式进行破解
  2. 公众号内测算法推荐引争议,却有小号因此阅读增长20倍
  3. 什么是数字示波器的垂直分辨率
  4. “注释”是程序员的自我修养
  5. Halcon常见错误
  6. 初级程序员 中级程序员_急切的程序员
  7. git | 如何移除 Untracked files?
  8. STM32---定时器的ETR功能
  9. 永续合约短线交易技巧?
  10. (三)洞悉linux下的Netfilteramp;iptables:内核中的rule,match和target