我到东北玩泥巴⼀篇⽂章教会你使⽤Python⽹络爬⾍下载酷狗⾳乐
【⼀、项⽬背景】
现在的听歌软件动不动就是各种付费,要下载软件才能听,当你下载了之后,你会惊奇的发现这⾸歌还收费,这就让⼀向喜欢⽩嫖的我感到很伤⼼了。不过不⽤担⼼,因为我会Python啊
【⼆、项⽬准备】
田征1、编辑器:Sublime Text 3
2、软件:360浏览器
【三、项⽬⽬标】
下载我们喜欢的⾳乐。
【四、项⽬实现】
1、打开酷狗⾳乐官⽹
360浏览器打开酷狗⾳乐官⽹:
可以看到⼗分清爽的画风,这也是我⽐较喜欢的地⽅。
2、审查元素,分析请求
打开Network ,分析请求,我们可以看到:
从上图可以看出,这是请求的参数,所以我们可以使⽤Requests模块对它发起请求。
3、模拟发起请求
我们从⽹页中得知它的地址为:
可以看到真正对于我们来说有⽤的就只有SearchKeyWord参数后的值,前⾯的搜索类型默认填写即可,所以我们可以这样:
新⼿学习,Python 教程/⼯具/⽅法/解疑+V:itz992
import requests
headers={
'accept': '*/*',
'accept-encoding':'gzip, deflate, br',
'accept-language': 'zh-CN,zh;q=0.9',
'cookie': 'kg_mid=ebb2de813317a791bcf7b7d3131880c4; UM_distinctid=1722ba8b22632d-07ac0227c507a7-4e4c0f20-1fa400-1722ba8b2284a1; kg_dfid =0Q0BEI47P4zf0mHYzV0SYbou; kg_dfid_collect=d41d8cd98f00b204e9800998ecf8427e; Hm_lvt_aedee6983d4cfc62f509129360d6bb3d=1590041687,15 90280210,1590367138,1590367386; Hm_lpvt_aedee6983d4cfc62f509129360d6bb3d=1590367431',
'referer': 'www.kugou/yy/html/search.html',
'sec-fetch-mode': 'no-cors',
'sec-fetch-site': 'same-site',
'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
aa=input('请输⼊歌名:')
data={
'callback': 'jQuery112408716317197794392_1590368232677',张继科个人资料
凤的拼音和组词
'keyword':aa,
'page': '1',
'pagesize':'30',
'userid':'-1',
钟汉良主演的电视剧别无选择'clientver': '',
'platform': 'WebFilter',
'tag': 'em',
'filter': '2',
'iscorrection': '1',
'privilege_filter': '0',
'_': '1590368232679',
}
<('www.kugou/yy/html/search.html',params=data,timeout=4)
这样就实现了模拟请求,我们来验证下:
可以看出它成功打印出了和我们上⾯⼀模⼀样的地址。
4、获取⾳乐⽂件列表
('www.kugou/yy/html/search.html',params=data,timeout=5)
print(rep.url)
(rep.url,timeout=4)
)
当我们将请求地址填写正确后,我发现竟然内容与预期不相符,但是请求地址对的⼀批。我以为是这样的结果
实际上的结果:
可以看到差距很⼤,⽽且⽤Json也根本获取不到,报格式错误,说明不是⼀个Json,看来这⽐QQ⾳乐难度⾼点。不过我们今天要下载的是⾳频⽂件,所以暂时跳过,不管它。
5、下载⾳频⽂件
我们在搜索后弹出来的列表中选择原唱曲⽬,进去听⼀下:
我选择第⼀⾸,打开是这样,我们开始骚操作,打开Network:
我们输⼊后缀Mp3,然后定位到对应的请求,然后打开它的请求结果,可以看到⼀个Json结果:
it行业是什么我们将Json结果粘贴到控制台,可以看到⾥⾯有⼀段关于Mp3的结果,不过添加了点⼲扰符号,我们把它提取出来:
这样我们就可以把酷狗⾳乐的歌曲下载下来了。
【五、项⽬总结】
1、其实,酷狗⾳乐与QQ⾳乐不同,酷狗⾳乐的下载链接更好捕获,你可以直接在它的播放界⾯捕获到:
模拟请求这个界⾯,⼀切都搞定了。
2、关于QQ⾳乐的获取,可以参考之前发布的系列⽂章:
3、需要本⽂源码的⼩伙伴,关注看主页!