@
目录
API说明:
注意事项
如何获取音乐MP3下载地址
免费歌曲
付费歌曲
下载歌曲
requests解析网页例程
欢迎关注 『Python』 系列,持续更新中
爬虫实战之免费爬取付费音乐(保姆级图文+详细代码注释+完整项目代码)
免责声明:本文的初衷是学习爬虫知识的一个实例,通过程序下载的版权音乐24小时侵删。
你是不是在pc端上经常遇到这种情况——音乐无法下载,必须下载客户端才能下载?
爬虫可以解决这个麻烦!
response=requests.get(参数1,headers=参数2)
参数1:url 存放被爬取的网页url地址
参数2:可选参数,访问头,模拟浏览器访问信息
返回值:200表示爬取解析网页成功
用了反爬机制,自定义headers
time模块用于获取当前时间,给文件命名,其实也可以爬取歌曲名字来命令下载好的歌曲文件(给大家提供一个思路)
因为这只是学习测试,只支持单个歌曲的下载,很简陋,严禁使用本程序大面积下载收费音乐营利!
爬取数据的前提首先是别人让你爬取才行,问题在于找到音乐文件的下载地址!
我们先从免费歌曲开始(付费歌曲在免费歌曲的基础上演变而来)
谷歌浏览器右键检查(有些浏览器叫审查元素)
在新打开的这个页面中选择网络(network)选项卡,点击刷新(如果你之后下载第二首音乐不刷新的话总是显示第一首音乐)

随便找一首歌曲:<code>http://www.kuwo.cn/play_detail/197789527</code>打开网页
在这个网络窗口中按<code>F5</code>刷新,注意确保音乐播放的歌曲是你想要的歌曲
你会发现原来空白的网络多了很多东西
然后搜索MP3,找到playurl
右键,在新标签页中打开
到这里,我们得到了一个存放MP3文件地址的json地址
<code>http://www.kuwo.cn/api/v1/www/music/playUrl?mid=197789527&type=music&httpsStatus=1&reqId=23762b30-5e0f-11ec-857c-dfb0b0613858</code>
得到了音乐的下载地址
<code>https://cr-sycdn.kuwo.cn/6ca645b59ddbbda92b20cb7484ce8d60/61ba9655/resource/n2/50/97/3993078800.mp3</code>
和免费歌曲类似,但是你会发现无法获取到他的playurl!
做法:你先获取到一个免费歌曲的存放MP3文件地址的json地址
你可以多试试几首歌曲,你会发现这里的mid参数是歌曲的一个标志参数
那么你把免费歌曲的mid参数换成付费的试试看:(把197789527换成了228908)
<code>https://www.kuwo.cn/api/v1/www/music/playUrl?mid=228908&type=music&httpsStatus=1&reqId=23762b30-5e0f-11ec-857c-dfb0b0613858</code>
把其中的<code>type=music</code>改变成<code>type=mp3</code>
<code>https://www.kuwo.cn/api/v1/www/music/playUrl?mid=228908&type=mp3&httpsStatus=1&reqId=23762b30-5e0f-11ec-857c-dfb0b0613858</code>出现了MP3的下载地址
打开MP3地址
下图情况有可能是因为url有时效性,我的url你肯定用不了,你得通过上面的获取url教程自己手动获取。
随便找一个音乐的播放网址:<code>http://www.kuwo.cn/play_detail/197789527</code>
下载成功
大家喜欢的话,给个👍,点个关注!继续跟大家分享敲代码过程中遇到的问题!
版权声明:
发现你走远了@mzh原创作品,转载必须标注原文链接
Copyright 2021 mzh
Crated:2021-12-16
【Python安装第三方库一行命令永久提高速度】 【使用PyInstaller打包Python文件】 【更多内容敬请期待】