网易云音乐python爬虫搜索接口,评论接口,歌词接口
网易云搜索歌曲,歌曲评论抓取,歌词抓取,仅供参考。
网易云音乐接口分析
网易云接口都是同一套加密代码,不同得API对应不同的请求参数,本文以搜索歌曲API为例子详细介绍加密代码,js AES 加密
搜索歌曲接口解析
1.搜索歌曲 《在一起》
2.搜索歌曲接口
2.1 第一步找到搜索歌曲接口
2.2 第二步 通过关键词全局搜索 params 和 encSecKey,找到对应的代码文件
2.3 第三步 通过断点调试定位具体加密代码位置
2.4 分析 代码块
var bVV0x = window.asrsea(JSON.stringify(i3x), bqM3x(["流泪", "强"]), bqM3x(TM7F.md), bqM3x(["爱心", "女孩", "惊恐", "大笑"]));
其中
asrsea( )未知函数
bqM3x( ) 未知函数
TM7F.md 未知参数
i3x:未知参数
2.4.1 向上分析代码 文件 13059行找到 bqM3x函数 以及TM7F
var bqM3x = function(cyu6o) {var m3x = [];k3x.bf4j(cyu6o, function(cyt6n) {m3x.push(TM7F.emj[cyt6n])});return m3x.join("")};TM7F.md = ["色", "流感", "这边", "弱", "嘴唇", "亲", "开心", "呲牙", "憨笑", "猫", "皱眉", "幽灵", "蛋糕", "发怒", "大哭", "兔子", "星星", "钟情", "牵手", "公鸡", "爱意", "禁止", "狗", "亲亲", "叉", "礼物", "晕", "呆", "生病", "钻石", "拜", "怒", "示爱", "汗", "小鸡", "痛苦", "撇嘴", "惶恐", "口罩", "吐舌", "心碎", "生气", "可爱", "鬼脸", "跳舞", "男孩", "奸笑", "猪", "圈", "便便", "外星", "圣诞"]TM7F.emj = {"色": "00e0b","流感": "509f6","这边": "259df","弱": "8642d","嘴唇": "bc356","亲": "62901","开心": "477df","呲牙": "22677","憨笑": "ec152","猫": "b5ff6","皱眉": "8ace6","幽灵": "15bb7","蛋糕": "b7251","发怒": "52b3a","大哭": "b17a8","兔子": "76aea","星星": "8a5aa","钟情": "76d2e","牵手": "41762","公鸡": "9ec4e","爱意": "e341f","禁止": "56135","狗": "fccf6","亲亲": "95280","叉": "104e0","礼物": "312ec","晕": "bda92","呆": "557c9","生病": "38701","钻石": "14af6","拜": "c9d05","怒": "c4f7f","示爱": "0c368","汗": "5b7a4","小鸡": "6bee2","痛苦": "55932","撇嘴": "575cc","惶恐": "e10b4","口罩": "24d81","吐舌": "3cfe4","心碎": "875d3","生气": "e8204","可爱": "7b97d","鬼脸": "def52","跳舞": "741d5","男孩": "46b8e","奸笑": "289dc","猪": "6935b","圈": "3ece0","便便": "462db","外星": "0a22b","圣诞": "8e7","流泪": "01000","强": "1","爱心": "0CoJU","女孩": "m6Qyw","惊恐": "8W8ju","大笑": "d"};
看都不想看。。。。。。 三个参数都是固定的 在当前环境下 执行语句获得结果
bqM3x([“流泪”, “强”])
**010001**
bqM3x(TM7F.md)
"00e0b509f6259df8642dbc35662901477df22677ec152b5ff68ace615bb7b725152b3ab17a876aea8a5aa76d2e417629ec4ee341f56135fccf695280104e0312ecbda92557c93870114af6c9d05c4f7f0c3685b7a46bee255932575cce10b424d813cfe4875d3e82047b97ddef52741d546b8e289dc6935b3ece0462db0a22b8e7"
bqM3x([“爱心”, “女孩”, “惊恐”, “大笑”])
"0CoJUm6Qyw8W8jud"
2.4.2 分析 i3x参数 和 asrsea函数
其中的 e,f,g参数均已知 (可以搭建后台API直接掉用 其中的CryptoJS 自行倒入)
function a(a) {var d, e, b = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", c = "";for (d = 0; a > d; d += 1)e = Math.random() * b.length,e = Math.floor(e),c += b.charAt(e);return c}function b(a, b) {var c = CryptoJS.enc.Utf8.parse(b), d = CryptoJS.enc.Utf8.parse("0102030405060708"), e = CryptoJS.enc.Utf8.parse(a), f = CryptoJS.AES.encrypt(e, c, {iv: d,mode: CryptoJS.mode.CBC});return f.toString()}function c(a, b, c) {var d, e;return setMaxDigits(131),d = new RSAKeyPair(b,"",c),e = encryptedString(d, a)}function d(d, e, f, g) {var h = {}, i = a(16);return h.encText = b(d, g),h.encText = b(h.encText, i),h.encSecKey = c(i, e, f),h}function e(a, b, d, e) {var f = {};return f.encText = c(a + e, b, d),f}
2.4.3 python代码复写js (这里开始就是很烦的了 不想搭建后台,直接调用js代码,请求CryptoJS文件会有问题,没办法只能用python代码模拟CryptoJS执行加密)
python 有第三方库 Crypto 可执行AES 加密(有坑)
直接pip install Crypto (会报错 找不到此model)
正确下载
pip install pycryptodome
·使用第三方库 Crypto执行加密操作网上很多坑(自己的见解也很浅)下面的是成功可执行代码(注意js里面加密使用了两次,每次不同的加密参数)具体详细使用见文末github地址
# js代码中b函数的复写def crypt_js_complex_base(text,key):BS = AES.block_sizepad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS).encode('utf-8')unpad = lambda s: s[0:-s[-1]]key = bytes(key,encoding="utf-8")text = text.encode("utf-8")IV = b'0102030405060708' # 默认参数cipher = AES.new(key, mode=AES.MODE_CBC, IV=IV)# cipher2 = AES.new(key, mode=AES.MODE_CBC, IV=IV) # 加密和解密,cipher对象只能用一次# print(text)encrypted = pad(text)# print(encrypted)encrypted = cipher.encrypt(encrypted)# print(encrypted)encrypted = base64.b64encode(encrypted).decode("utf-8")# print("第一次加密结果", encrypted)return encrypted
2.4.4 下面
网易云音乐python爬虫搜索接口,评论接口,歌词接口相关推荐
- python爬虫api接口,网易云音乐python爬虫api接口
抓包能力有限,分析了一下网易云音乐的一些api接口,但是关于它很多post请求都是加了密,没有弄太明白.之前在知乎看到过一个豆瓣工程师写的教程,但是被投诉删掉了,请问有网友fork了的吗?因为我觉得他 ...
- 网易云音乐python爬虫(Js破解)
网易云音乐下载python爬虫(Js破解) 最近做了一个网易云音乐下载的python爬虫,功能就是输入歌曲的名字,程序自动下载网易音乐搜索界面的第一首歌(一般都是原唱排第一位).本文很适合小白学习,写 ...
- python第三方插件登录网易音乐_GitHub - TomoToTomoT/NeteaseCloudMusic-Python: 网易云音乐--python Api...
#NeteaseCloudMusic-python 网易云音乐python版Api 开发文档 获取最新评论 req_comments(music_id, page = 1, page_num = 20 ...
- 『Python』网易云音乐API爬虫(音乐搜索音乐播放)
前言 永远相信美好的事情即将发生 背景 一直想做一个在线的音乐播放器,这个想法最早可以追溯到做毕设的那会,那时候做了个在线的商城系统, 里面有个在线听歌的模块,其实就是调用大佬们封装好的API进行搜索 ...
- 爬取网易云音乐某一个人的评论
需求来源 上周六的时候和一朋友聊天,聊到网易云系列产品,不知不觉就说到了网易云音乐,我说了些产品细节的问题,比如说,为什么在我不开通会员的情况下,网易云音乐不允许我红心一个会员歌曲,没有购买 没有听歌 ...
- python3爬取网易云音乐《我们》全部评论
伴随着<后来的我们>的上映,这首歌的评论也是一路暴涨.如今让我们趁着这波秋风(虽然已经有点晚了),把这首歌的评论爬下来.虽然之前还打算做出词云可视化出来······然而,还是太懒了 之前爬 ...
- 网易云音乐歌手歌曲、用户评论、用户信息爬取
这里以邓紫棋歌手为例,可以去网易云音乐看她的主页: 所有完整的代码在楼主的github:https://github.com/duchp/python-all/tree/master/web-craw ...
- 网易云音乐工程师,亲自揭晓评论实现技术!| 技术头条
截止2019年二季度,网易云音乐用户数已经突破8亿,成为最活跃的音乐社区,位居在线音乐行业第一阵营.相信大家或多或少都使用过网易云音乐,不知道有没有人跟我一样,在云音乐听歌的时候喜欢打开评论看一看, ...
- 【代码】网易云音乐(周杰伦-晴天)评论的爬取
参考爬取网易云音乐评论,典型的ajax加载,大多人是去破解js加密,有点繁琐. 爬取周杰伦-晴天这一条评论,因为数据量稍大.以后爬取整个歌手. 这是加密api的情况: import requestsd ...
最新文章
- 计算机社团部门职责,部门职责
- c#NPOI读取excel 比interop和Microsoft.Jet.OLEDB.4.0 之类 的好的多
- 2019年,你需要关注这些Node API和Web框架
- 使用iptables和ipset实现大量屏蔽恶意IP地址
- python实现键盘记录器
- VTK:八叉树可视化用法实战
- 人生影响最大的三位老师
- C/C++:程序的内存分配方式
- SAP Spartacus RouterState
- JLBH示例3 –吞吐量对延迟的影响
- python + selenium 搭建环境步骤
- 前端学习(1328):服务器基础概念
- window当mac用,VirtualBox虚拟机安装os系统
- typeof操作符返回一个字符串,表示未经计算的操作数的类型。
- ExtJS TreeGrid的使用方法
- 【转--- 数据挖掘的心得学习】
- 两个软硬程度一样的鸡蛋,它们在某一层摔下会碎,有个100层的建筑,要求最多用两个鸡蛋确 定鸡蛋安全下落的临界位置,给出临界位置?如果是n层楼,m个鸡蛋,请给出确定临界位置的算法
- ros 校验数字签名时出错。此仓库未被更新,所以仍然使用此前的索引文件。
- Android Selinux avc报错分析
- Winform像菜单一样弹出自定义内容实现示例
热门文章
网易云音乐python爬虫搜索接口,评论接口,歌词接口相关推荐
- python爬虫api接口,网易云音乐python爬虫api接口
抓包能力有限,分析了一下网易云音乐的一些api接口,但是关于它很多post请求都是加了密,没有弄太明白.之前在知乎看到过一个豆瓣工程师写的教程,但是被投诉删掉了,请问有网友fork了的吗?因为我觉得他 ...
- 网易云音乐python爬虫(Js破解)
网易云音乐下载python爬虫(Js破解) 最近做了一个网易云音乐下载的python爬虫,功能就是输入歌曲的名字,程序自动下载网易音乐搜索界面的第一首歌(一般都是原唱排第一位).本文很适合小白学习,写 ...
- python第三方插件登录网易音乐_GitHub - TomoToTomoT/NeteaseCloudMusic-Python: 网易云音乐--python Api...
#NeteaseCloudMusic-python 网易云音乐python版Api 开发文档 获取最新评论 req_comments(music_id, page = 1, page_num = 20 ...
- 『Python』网易云音乐API爬虫(音乐搜索音乐播放)
前言 永远相信美好的事情即将发生 背景 一直想做一个在线的音乐播放器,这个想法最早可以追溯到做毕设的那会,那时候做了个在线的商城系统, 里面有个在线听歌的模块,其实就是调用大佬们封装好的API进行搜索 ...
- 爬取网易云音乐某一个人的评论
需求来源 上周六的时候和一朋友聊天,聊到网易云系列产品,不知不觉就说到了网易云音乐,我说了些产品细节的问题,比如说,为什么在我不开通会员的情况下,网易云音乐不允许我红心一个会员歌曲,没有购买 没有听歌 ...
- python3爬取网易云音乐《我们》全部评论
伴随着<后来的我们>的上映,这首歌的评论也是一路暴涨.如今让我们趁着这波秋风(虽然已经有点晚了),把这首歌的评论爬下来.虽然之前还打算做出词云可视化出来······然而,还是太懒了 之前爬 ...
- 网易云音乐歌手歌曲、用户评论、用户信息爬取
这里以邓紫棋歌手为例,可以去网易云音乐看她的主页: 所有完整的代码在楼主的github:https://github.com/duchp/python-all/tree/master/web-craw ...
- 网易云音乐工程师,亲自揭晓评论实现技术!| 技术头条
截止2019年二季度,网易云音乐用户数已经突破8亿,成为最活跃的音乐社区,位居在线音乐行业第一阵营.相信大家或多或少都使用过网易云音乐,不知道有没有人跟我一样,在云音乐听歌的时候喜欢打开评论看一看, ...
- 【代码】网易云音乐(周杰伦-晴天)评论的爬取
参考爬取网易云音乐评论,典型的ajax加载,大多人是去破解js加密,有点繁琐. 爬取周杰伦-晴天这一条评论,因为数据量稍大.以后爬取整个歌手. 这是加密api的情况: import requestsd ...
最新文章
- 计算机社团部门职责,部门职责
- c#NPOI读取excel 比interop和Microsoft.Jet.OLEDB.4.0 之类 的好的多
- 2019年,你需要关注这些Node API和Web框架
- 使用iptables和ipset实现大量屏蔽恶意IP地址
- python实现键盘记录器
- VTK:八叉树可视化用法实战
- 人生影响最大的三位老师
- C/C++:程序的内存分配方式
- SAP Spartacus RouterState
- JLBH示例3 –吞吐量对延迟的影响
- python + selenium 搭建环境步骤
- 前端学习(1328):服务器基础概念
- window当mac用,VirtualBox虚拟机安装os系统
- typeof操作符返回一个字符串,表示未经计算的操作数的类型。
- ExtJS TreeGrid的使用方法
- 【转--- 数据挖掘的心得学习】
- 两个软硬程度一样的鸡蛋,它们在某一层摔下会碎,有个100层的建筑,要求最多用两个鸡蛋确 定鸡蛋安全下落的临界位置,给出临界位置?如果是n层楼,m个鸡蛋,请给出确定临界位置的算法
- ros 校验数字签名时出错。此仓库未被更新,所以仍然使用此前的索引文件。
- Android Selinux avc报错分析
- Winform像菜单一样弹出自定义内容实现示例