python爬取全名k歌

时间:2023-03-09 04:18:08
python爬取全名k歌

python3 爬取全名k歌

代码:

import re
import requests
import ssl
ssl._create_default_https_context=ssl._create_unverified_context
k=0
if __name__ == '__main__':
url = 'https://kg.qq.com/node/personal?uid=649c9583262436'
params={
'uid':'649c9583262436'
}
headers={
'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
}
response=requests.get(url=url,headers=headers,params=params)
p='<a href="(https://node.kg.qq.com/play?.+?g_f=personal)"'
new_url=re.findall(p,response.text)
new_url = set(new_url)
new_url = list(new_url)
print(new_url)
for i in new_url:
new_p = '"playurl":"(http:.+?sdtfrom=v1506.+?)"'
response2 = requests.get(url=i, headers=headers)
music_url=re.findall(new_p, response2.text)[0]
print(music_url)
if music_url:
music_url=music_url
response3=requests.get(url=music_url,headers=headers)
with open('%s.m4a'%k,'wb')as f:
f.write(response3.content)
k+=1

效果图:

python爬取全名k歌

关于优化:

1.歌曲名字优化:用正则匹配歌曲名,并赋给歌曲

2.速度优化:开启多线程,实现并发,提高效率

3.查看更多优化:获取查更多的连接,下载剩下的歌曲

4.软件优化:做成软件,增加前端界面,输入连接就可以下载