当前位置:网站首页>An article taught you to download cool dog music using Python web crawler
An article taught you to download cool dog music using Python web crawler
2020-11-06 20:53:00 【Python advanced】
【 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/
版权声明
本文为[Python advanced]所创,转载请带上原文链接,感谢
边栏推荐
- Basic usage of Vue codemirror: search function, code folding function, get editor value and verify in time
- Bitcoin once exceeded 14000 US dollars and is about to face the test of the US election
- Look! Internet, e-commerce offline big data analysis best practice! (Internet disk link attached)
- JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
- From overseas to China, rancher wants to do research on container cloud market
- Outsourcing is really difficult. As an outsourcer, I can't help sighing.
- Analysis of serilog source code -- how to use it
- Will blockchain be the antidote to the global epidemic accelerating the transformation of Internet enterprises?
- CCR coin frying robot: the boss of bitcoin digital currency, what you have to know
- ORA-02292: 违反完整约束条件 (MIDBJDEV2.SYS_C0020757) - 已找到子记录
猜你喜欢

面试官: ShardingSphere 学一下吧

如何对数据库账号权限进行精细化管理?

An article will introduce you to HTML tables and their main attributes

From overseas to China, rancher wants to do research on container cloud market

只有1个字节的文件实际占用多少磁盘空间

游戏主题音乐对游戏的作用

MongoDB与SQL常用语法对应表

The legality of IPFs / filecoin: protecting personal privacy from disclosure

Swagger 3.0 brushes the screen every day. Does it really smell good?

代码生成器插件与Creator预制体文件解析
随机推荐
Try to build my mall from scratch (2): use JWT to protect our information security and perfect swagger configuration
Behind the first lane level navigation in the industry
一部完整的游戏,需要制作哪些音乐?
How to understand Python iterators and generators?
事务的本质和死锁的原理
美团内部讲座|周烜:华东师范大学的数据库系统研究
Flink's datasource Trilogy 2: built in connector
Pn8162 20W PD fast charging chip, PD fast charging charger scheme
【:: 是什么语法?】
华为云微认证考试简介
新建一个空文件占用多少磁盘空间?
Xmppmini project details: step by step from the principle of practical XMPP technology development 4. String decoding secrets and message package
代码重构之法——方法重构分析
Tron smart wallet PHP development kit [zero TRX collection]
只有1个字节的文件实际占用多少磁盘空间
Get twice the result with half the effort: automation without cabinet
With this artifact, quickly say goodbye to spam messages
StickEngine-架构12-通信协议
如何对数据库账号权限进行精细化管理?
nacos、ribbon和feign的簡明教程