python爬取QQ音乐

爬虫爬取QQ音乐

import json
import os
import requests
w=str(input('输入歌名:'))
if not os.path.exists('./QQ音乐'):
    os.mkdir('./QQ音乐')
url = f"https://c.y.qq.com/soso/fcgi-bin/client_search_cp?"
param={
'ct':'24',
'qqmusic_ver':'1298',
'new_json':'1',
'remoteplace':'txt.yqq.top',
'searchid':'61087599084075221',
't':'0',
'aggr':'1',
'cr':'1',
'catZhida':'1',
'lossless':'0',
'flag_qc':'0',
'p':'1',
'n':'10',
'w':w,
'_':'1623141792983',
'cv':'4747474',
'format':'json',
'inCharset':'utf-8',
'outCharset':'utf-8',
'notice':'0',
'platform':'yqq.json',
'needNewCode':'0',
'uin':'0',
'g_tk_new_20200303':'17197024',
'g_tk':'17197024',
'hostUin':'0',
'loginUin':'0',
}
response = requests.get(url=url,params=param).json()
print('---开始获取---')

cv_id=response['data']['song']['list'][0]['mid']
title=response['data']['song']['list'][0]['title']
header={
'cookie':'pgv_pvid=6923664120; RK=0sSZFEUKVy; ptcz=86bbd55a704e7b99fb161db1f043c340b26998788050ddef4740a2e7255e0ef0; ts_uid=7141101048; _ga=GA1.2.1239448856.1621763416; pac_uid=0_b838840b8af3c; _tc_unionid=02bb6f2a-9d72-4295-933d-46d698db7bb8; fqm_pvqid=a154c562-e8a1-41c6-b9e3-90854544ce29; euin=oKoz7iclNeEFNv**; tmeLoginType=2; psrf_musickey_createtime=1623075815; psrf_access_token_expiresAt=1630851815; qqmusic_key=Q_H_L_2S_A_260eKOpCJD5BIdSYeOxulHYWAXsug5ImnoYJofDkcL0_FZ1bf7k3hojh6F; pgv_info=ssid=s4212472504; fqm_sessionid=38693813-fad4-4b3c-9037-6a759b8951aa; ts_refer=i.y.qq.com/; ts_last=y.qq.com/n/ryqq/player',
'origin':'https://y.qq.com',
'pragma':'no-cache',
'referer':'https://y.qq.com/',
'sec-ch-ua':'" Not;A Brand";v="99", "Microsoft Edge";v="91", "Chromium";v="91"',
'sec-ch-ua-mobile':'?0',
'sec-fetch-dest':'empty',
'sec-fetch-mode':'cors',
'sec-fetch-site':'same-site',
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36 Edg/91.0.864.41',
'authority': 'u.y.qq.com',
'method': 'POST',
'path': '/cgi-bin/musics.fcg?_=1623137897727&sign=zzaw8qvbhqe3pmxnm52b3b2951a63aef215b6b15f90a78a17',
'scheme': 'https',
}
mus_url='https://u.y.qq.com/cgi-bin/musicu.fcg?“”&g_tk=352421221&jsonpCallback=getplaysongvkey7281977218930408&loginUin=0&hostUin=0&format=jsonp&inCharset=utf8&outCharset=utf-8&notice=0&platform=yqq&needNewCode=0&data={"req_1":{"module":"vkey.GetVkeyServer","method":"CgiGetVkey","param":{"guid":"4313582267","songmid":["%s"],"songtype":[0,0,0,0,0],"uin":"0","loginflag":1,"platform":"20"}}}'%cv_id
print('---获取成功---')
res=requests.get(url=mus_url,headers=header).json()
file_name=res['req_1']['data']['midurlinfo'][0]['filename']
purl=res['req_1']['data']['midurlinfo'][0]['purl']
if len(purl)==0:
    cv_id = response['data']['song']['list'][1]['mid']
    title = response['data']['song']['list'][1]['title']
    mus_url = 'https://u.y.qq.com/cgi-bin/musicu.fcg?“”&g_tk=352421221&jsonpCallback=getplaysongvkey7281977218930408&loginUin=0&hostUin=0&format=jsonp&inCharset=utf8&outCharset=utf-8&notice=0&platform=yqq&needNewCode=0&data={"req_1":{"module":"vkey.GetVkeyServer","method":"CgiGetVkey","param":{"guid":"4313582267","songmid":["%s"],"songtype":[0,0,0,0,0],"uin":"0","loginflag":1,"platform":"20"}}}' % cv_id
    res = requests.get(url=mus_url, headers=header).json()
    file_name = res['req_1']['data']['midurlinfo'][0]['filename']
    purl = res['req_1']['data']['midurlinfo'][0]['purl']
else:
    pass
full_url="http://ws.stream.qqmusic.qq.com/"+file_name+'/'+purl
print('开始下载')
headers={
'Connection':'keep-alive',
'Cookie':'pgv_pvid=6923664120; RK=0sSZFEUKVy; ptcz=86bbd55a704e7b99fb161db1f043c340b26998788050ddef4740a2e7255e0ef0; _ga=GA1.2.1239448856.1621763416; pac_uid=0_b838840b8af3c; _tc_unionid=02bb6f2a-9d72-4295-933d-46d698db7bb8; fqm_pvqid=a154c562-e8a1-41c6-b9e3-90854544ce29; euin=oKoz7iclNeEFNv**; tmeLoginType=2; pgv_info=ssid=s4212472504; fqm_sessionid=38693813-fad4-4b3c-9037-6a759b8951aa; _qpsvr_localtk=0.5195022146245027; psrf_musickey_createtime=1623138971; qqmusic_key=Q_H_L_2if8-260eSliOE22c5FqwIR3A-FZhVfXdqQ1qkOwp-7yNnOI0Su_lQJI_Vw2a17; psrf_access_token_expiresAt=1630914971',
'Host':'ws.stream.qqmusic.qq.com',
'Pragma':'no-cache',
'Upgrade-Insecure-Requests':'1',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36 Edg/91.0.864.41',
}

music=requests.get(url=full_url,headers=headers).content
m=title[0:4] +'.mp3'
print(m)
path='./QQ音乐/'+m
with open(path,'wb') as  f:
    f.write(music)
    print('下载成功!!!!')




  • 7
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值