社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

利用Python来下载会员歌曲!想让我充会员?不存在的!

Python学习交流 • 5 年前 • 404 次点击  


低头呢喃,对你的偏爱太过于明目张胆


目标

QQ音乐中VIP才能下载的歌曲

使用库

主要使用的库:

  • requests 向服务器发起请求

  • urllib 构建url地址

  • re 提取需要的数据

分析

进群:548377875   即可获取数十套PDF哦!源码也可以


利用chrome的开发者工具,勾选Preserver log,并且选中Media,刷新页面


刷新页面



所以现在的问题成了如何请求文件A。我们已经有了请求参数,也可以找到服务器的接口


根据反复测试,发现只有关键字vkey的值在发生变化,所以只要我们获取了动态变化的vkey值,拿到文件A就易如反掌了

(2)文件B

通过开发者工具,我找到了一个JS文件,暂且称之为文件B,它在歌曲文件之前被请求,并且其返还数据里面有vkey


我们也发现,需要请求这个文件,需要的query参数不可谓少





如何获得这个文件呢?


可以看到,获取这个文件的关键点是albummid的值


(4)文件D

来到QQ音乐的搜索界面


当我们在搜索框中键入文字以后点击右边的搜索按钮,会发现浏览器收到一个文件,我称之为文件D


文件D中的list里边就包含了我们搜索出来的结果,因为存在歌曲同名啊,翻唱之类的,所以一般list里边都包含多个值,而一般情况下,比较火的歌,且在QQ音乐中有版权的,都会存放在第一个(如果有其他目的,可自行在list的数据中进行取舍),这里我就只取出第一个




为了更加友好,我另写了一个main.py的文件,来提示程序的用法


代码运行效果如下


完整代码已上传Github,源码需要请私信!



今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/07TJ6hev7M
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/22339
 
404 次点击