2021-10-15 python 抓取网易云mv
2021/10/15 14:14:17
本文主要是介绍2021-10-15 python 抓取网易云mv,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import requests def wy_music(): url = f'https://music.163.com/weapi/cloudsearch/get/web?csrf_token=0295f1fb7cf2e071d2417e47cf69f80c' headers ={ 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36', 'cookie': 'NTES_P_UTID=Qa2AOfZX0j1UiRmj82XdAu0bGewKtPZ1|1630462183; P_INFO=feng_qwq@163.com|1630462183|0|mail163|00&99|not_found&1630330762&mailmaster_ios#shh&null#10#0#0|&0|mailmaster_ios|feng_qwq@163.com; nts_mail_user=feng_qwq@163.com:-1:1; _iuqxldmzr_=32; _ntes_nnid=bb83c471dafecf70353d36a2a1ce2044,1630462191047; _ntes_nuid=bb83c471dafecf70353d36a2a1ce2044; NMTID=00O1eGAqzrEu9Tu60lysCMb0vK2uIIAAAF7nx6mBw; WNMCID=ftjgmy.1630462191296.01.0; WEVNSM=1.0.0; WM_TID=EiI0VFLIen5FQUVABQZq3tPvQu2JOhQW; timing_user_id=time_8lFiicFQtG; WM_NI=rF6%2FWdTcKZblhwpwtCVk0MxtbWVU9vMCJsm2goLkMDZKiJrWxtGltfzWfkKzkW%2BJX7kZTshlccb1LDXtEnFNLYSSihmlyV9kLD66EF2ZXReJ3O4kE3OEIL6YI6IphKlbYTQ%3D; WM_NIKE=9ca17ae2e6ffcda170e2e6ee9ab643bcf088b5f66bb6928bb2d85e939f9f84b53f8caf8bd0b54598f1f7aeca2af0fea7c3b92ab29afad0d67098bd85bbe168aca9c098f74996b500aefb80a2899ab6bc7e8f9d8694f03aa5b1848cd0509a95a7abf15dbcac898df76eba89aa8cca72a989e5abdb3da9869c94eb68a1bdaed2cf509cac8b8fc54690879db4ec64afb4b7b7bc61909cfad7c84ef28698b3e842f191fc8cc8398d9b87adb5538bea8791eb41b0be97b5d437e2a3; playerid=98119178; MUSIC_A_T=1539514560999; __csrf=0295f1fb7cf2e071d2417e47cf69f80c; __remember_me=true; MUSIC_U=45cb41c40210d38577e5460e2bd5b84779eefa4c89544846a0a46c577566995e993166e004087dd3d78b6050a17a35e705925a4e6992f61dfe3f0151024f9e31; MUSIC_R_T=1539514668634; ntes_kaola_ad=1; JSESSIONID-WYYY=6uSdt0E4zrNPaQ4Q%5C%2F74S%2FK8rTTOqEd3C9hp8wOI%2B5zC0bbzhEhs%5CWStWyQoNnakcF%2F5SuK4kKcWAMYOPovp5E%2BUpzf2Pov34AsQPjruIfGCCHpPrAo6XUdAWyreV0qr9H%5CjXHJqyjNdPvXBDncliUqboJshnHa3y0o4abkvT3menlER%3A1634124608642', 'referer': 'https://music.163.com/search/' } data = { "params": "V3/mzHAebXKO3q7wOIUbi13vTEIhos2k/ccqS2Pe5AcmS9T7UUHvZnTYHPAITWDKXGyU5uz/68r2/LV2DJ4cXrpXO5US9BKXqOwiuBvn3awxlAp+f2CLD6m5iGUJpPjp0PG9ILfMceDW9iKLIUY6+m/in6tZGcgOqR7d/At0MRMLiOQMf3Sy/DYEfgC/ufQeEl+v5dN3VZS1BagYE7KtwfOvtnXL7eK4Kr4k0rLIWiiTb+2R3O8TKDkQ4LkqWy60rhQJC96z7kPg7kgNyJwKSCe+VevOmmyC/tG6RmOQg3vXk+aGosNTzxHY2alj0f/6", "encSecKey": "de7bcb83bedcf63780d76e7a6d727c316121d6ae1d2edee3b0cb5ae6b778b29089a989edb8bcc92e79e0300ca557b3c43a3e5ea548e96f800454d365190cb31db3c745fdb316a2628db5922aca864ac6ea9546f9277518182689ed86614e39aafedebb7a2f04ea508a2da468db871f4d5b6099c81adf1abac37d052d8ceb1138", } response = requests.post(url,headers=headers,data=data).text import json reslist = json.loads(response) print(reslist) for i in range(0,30): x = reslist['result']['songs'][i]["mv"] name = reslist['result']['songs'][i]['name'] # print(type(x)) if x != 0: url ="https://music.163.com/mv?id={}".format(x) # print(url) headers={ 'authority': 'music.163.com', 'method': 'GET', 'path': '/', 'scheme': 'https', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36', 'cookie': 'NTES_P_UTID=Qa2AOfZX0j1UiRmj82XdAu0bGewKtPZ1|1630462183; P_INFO=feng_qwq@163.com|1630462183|0|mail163|00&99|not_found&1630330762&mailmaster_ios#shh&null#10#0#0|&0|mailmaster_ios|feng_qwq@163.com; nts_mail_user=feng_qwq@163.com:-1:1; _iuqxldmzr_=32; _ntes_nnid=bb83c471dafecf70353d36a2a1ce2044,1630462191047; _ntes_nuid=bb83c471dafecf70353d36a2a1ce2044; NMTID=00O1eGAqzrEu9Tu60lysCMb0vK2uIIAAAF7nx6mBw; WNMCID=ftjgmy.1630462191296.01.0; WEVNSM=1.0.0; WM_TID=EiI0VFLIen5FQUVABQZq3tPvQu2JOhQW; timing_user_id=time_8lFiicFQtG; MUSIC_A_T=1539514560999; __csrf=0295f1fb7cf2e071d2417e47cf69f80c; __remember_me=true; MUSIC_U=45cb41c40210d38577e5460e2bd5b84779eefa4c89544846a0a46c577566995e993166e004087dd3d78b6050a17a35e705925a4e6992f61dfe3f0151024f9e31; MUSIC_R_T=1539514668634; ntes_kaola_ad=1; JSESSIONID-WYYY=t9%2BuXSvZ2RDOuC8hS7skz8PvXm%5C00dD7yJ0fXp6uRHMXq%2FP27YxuNXD0gOc%5CHBdGmMh42avZqGN3NaHiTdb4Ju9CigldSisJyp4Cdfm9NERJWDcQvZNxsygmfnirQm8t7TI05m9gPfEnAzj06iIV%5Csir3MV8EPcIw49PwTVOk8fG56sM%3A1634195309083; WM_NI=QiOQMhd48gY02rYRhS6t7Hmt1LcePqUpGP7S2Zga8OH%2BePcjErnUxjdLZ0a7mCkJE%2FUnc7UIkm5Ryll8Qg9N9zwYrPXPziqwjafMSPDcrZOjdBanVK2BaG%2F3cgPiN1JQNm0%3D; WM_NIKE=9ca17ae2e6ffcda170e2e6ee95b5488c8e96dabc40f3b88ea2d45a938b8ebaf46595abb78cc67487e7f7a8b32af0fea7c3b92a93b781b2d064a8ecf888dc3cf2ae97b3eb59f6acf9a9f080f394ad86d37b97b089b1b659f286a982bb458cf5abb1e26287aea2b6fb62a89496d1e43daf9da5abc82597b2add8d843a9b3fbb3fc68b0e89f88bc46fba6b9baf15c9c90b68af47daabfaaaed25c88bdbebbce62a89eaf8fd541f29eafa8ae39a1b9a08acd3b8a8f828eb337e2a3', 'referer': 'https://music.163.com/mv?id={}'.format(x), 'sec-fetch-dest': 'document', 'sec-fetch-mode': 'navigate', 'sec-fetch-site': 'same-origin', 'sec-fetch-user': '?1', 'upgrade-insecure-requests': '1' } sessions = requests.session() res = sessions.get(url=url,headers=headers).text with open("mv.html",'w',encoding='utf-8')as fw: fw.write(res) import re url1 = re.findall('<meta property="og:video" content=(.*>?)>',res)[0] url2 = url1.split(' ')[0] url3 = url2.replace('"','') import urllib.parse as parse # print(url3) # 解析拿到的url res_url = parse.unquote(url3) print(res_url) filepath = r"C:\Users\与久\PycharmProjects\爬虫\歌曲下载\{}.mp4".format(name) # with open(filepath, 'w')as fw: # fw.write(res_url) url_1 =requests.get(res_url).content f = open(filepath,'wb') f.write(url_1) f.close() print("下载成功") wy_music()
这篇关于2021-10-15 python 抓取网易云mv的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南