思路 本次爬取音乐使用reqursts模块,在安装此模块的基础上爬取音乐。 首先要获取抓包链接,这是一串网址,获取方法就是当你在浏览器界面播放音乐时打开开发者界面寻取。其次使用get()向服务器发送get请求 .content获取二进制数据。最后将此写入你的地址即可。
1,requests模块获取
方法1:win+r>>>cmd打开命令指示器输入命令下载reqursts第三方模块 pip install baidu-aip 方法2: 在编译软件pycharm里安装baidu-aip第三方模块 File>>>settings…>>>project:python>>>python:interpreter>>>点击左 上角加号,搜索reqursts下载。 个人建议使用方法二,有时在命令指示器下载的第三方模块并不能使用,方法二则不会出现这类情况
2,抓包音乐链接(本文以edge为例)
在edge中打开wyy音乐根据个人需求播放所需音乐,再次基础上按下F12打开开发者模式,并且在菜单栏中点击网络。即可进入以下界面: 根据提示按下Ctrl + R组合键刷新信息 此时就会出现下图的上半部分,根据网络的进展即会出现大大小小的文件信息。其中就有我们所需要的 .m4a 文件。我们根据指示1的操作选择大小排序方式(一般.m4a文件是最大的)再根据指示二打开这个文件。如果是.m4a地址文件那么就成功抓到了,失败多操作几次。 然后复制这个.m4a地址 抓包成功后用一个变量保存这个地址 参考代码:
ur1 = "#输入抓取到的.m4a文件#"
3,get()向服务器发送get请求 .content获取二进制数据
参考代码:
data=requests.get(ur1).content
4,写入本地
输入文件保存的地址,最后不要忘记给抓取到的音乐命名且必须要以抓取到的文件后缀一致。 参考代码:
with open(r"#写入保存文件地址#\01music.m4a", "wb") as f:
f.write(data)
最后运行程序,至此就已经完成了。
问:能否抓取会员音乐或者是付费音乐? 答:去实践一下!
|