#爬虫!不是简单的爬资料数据#一次向网站的请求 点击 登陆 搜索#免费音乐#1.输入一首歌曲的名字 得到了、
#爬虫!不是简单的爬资料数据
#一次向网站的请求 点击 登陆 搜索
#免费音乐
#1.输入一首歌曲的名字 得到了、
#一系列相关歌曲的列表
#2.点击列表中的一个 得到了,(编号)
#这首歌曲的播放界面
#3.点击播放,得到了
# 美妙的音乐
#付费音乐
#1.输入一首歌曲的名字 得到了、
#一系列相关歌曲的列表
#2.点击列表中的一个
#购买播放界面
import re
import requests
input_song_name=input('请输入歌曲名:')
#网址中看到 %xx URL编码
url3 = f''
res3 = requests.get(url3)
#搜索结果第一个
#contentId = re.findall('"contentId":"(.*?),"', res3.text)[0]
contentId = re.findall('"contentId":"(.*?),"', res3.text)
#print(contentId)
for id in contentId
url2 = f'https://c.musicapp.migu.cn/MIGUM3.0/resource/song/by-contentids/v2.0?contentId={id}'
res2 = requests.get(url2)
copyrightId = re.findall('"copyrightId":"(.*?),"', res2.text)[0]
contentId = re.findall('"contentId":"(.*?),"', res2.text)[0]
#resourceType
albumId = re.findall('"albumId":"(.*?),"', res2.text)[0]
#netType
#toneFlag
songName = re.findall('"songName":"(.*?),"', res2.text)[0]
#请求
wz = {'channel' : '0140210'}
url1 = f'https://c.musicapp.migu.cn/MIGUM3.0/strategy/listen-url/v2.3?copyrightId={copyrightId}&contentId={contentId}&resourceType=2&albumId={albumId}&netType=01&toneFlag=PQ;'
res1 = requests.get(url1, headers=wz)
down_url = re.findall('"url":"(.*?)","',res1.text)[0]
print(res1.text)
url = '歌曲的链接'
res = requests.get(url)
open(f'{songName}.mp3','wb').write(res.content)