【 One 、 Project background 】
Now listening to music software is all kinds of payment , You have to download software to listen to , When you download it , You'll be surprised to find that the song still charges , This makes Xiaobian, who has always liked white whoring, feel very sad . therefore , Xiao Bian thinks hard , Finally let me discover the mystery , Let's see .
【 Two 、 Project preparation 】
1、 Editor :Sublime Text 3
2、 Software :360 browser
【 3、 ... and 、 Project objectives 】
Download our favorite music .
【 Four 、 Project implementation 】
1、 Open the official website of cool dog music
360 The browser opens the official website of cool dog music :
You can see a very refreshing painting style , This is also my favorite place .
2、 Review element , Analysis request
open Network , Analysis request , We can see :
As can be seen from the above figure , This is the request parameter , So we can use it Requests The module makes a request to it .
3、 Simulate initiate request
We know from the website that its address is :
https://www.kugou.com/yy/html/search.html#searchType=song&searchKeyWord=%E4%B8%8D%E8%B0%93%E4%BE%A0
We can see that the only thing that really works for us is SearchKeyWord The value after the parameter , The previous search type can be filled in by default , So we can do this :
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,1590280210,1590367138,1590367386; Hm_lpvt_aedee6983d4cfc62f509129360d6bb3d=1590367431',
'referer': 'https://www.kugou.com/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(' Please enter the song name :')
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',
}
requests.get('https://www.kugou.com/yy/html/search.html',params=data,timeout=4)
This implements the simulated request , Let's verify :
As like as two peas, we can see that it has successfully printed the same address as ours .
4、 Get a list of music files
rep=requests.get('https://www.kugou.com/yy/html/search.html',params=data,timeout=5)
print(rep.url)
res=requests.get(rep.url,timeout=4)
print(res.text)
When we fill in the request address correctly , I found that the content didn't match the expectation , But ask for a batch of address pairs .
I thought it was the result :
The actual result is :
You can see that there is a big gap , Also used Json You can't get it at all , Report format error , The explanation is not a Json, It seems that this is more than QQ The music is very difficult . But what we're going to download today is audio files , So skip for a while , Whatever it is .
5、 Download audio files
We select the original track from the list that pops up after searching , Go in and listen to :
I chose the first one , Open like this , We started to operate , open Network:
We enter the suffix Mp3, Then locate the corresponding request , Then open its request result , You can see a Json result :
We will Json The results are pasted into the console , You can see that there is a paragraph about Mp3 Result , But with a little interference , Let's extract it :
So we can download cool dog songs .
【 5、 ... and 、 Project summary 】
1、 Actually , Cool dog music and QQ The music is different , Cool dog music download link better capture , You can capture it directly in its playback interface :
Simulate the request interface , It's all done .
2、 About QQ The acquisition of music , You can refer to the previous series :
3、 Need this article source code small partner , The background to reply “ Cool dog music ” Four words , Can get . Want to learn more Python Web crawler and data mining knowledge , Go to a professional website :http://pdcfighting.com/