Python实现网易云音乐歌单歌曲批量下载
本文提供使用Python批量下载网易云音乐歌单中歌曲的完整示例代码。通过解析歌单链接获取歌曲ID与名称,并利用第三方接口转换音频链接进行下载。文中详细说明了Cookie的获取方法、代码逻辑结构及保存路径配置,帮助用户快速实现本地音乐文件的自动化下载。
Python实现网易云音乐歌单歌曲批量下载
本文记录了一个用于下载网易云音乐歌单歌曲的Python脚本实现过程。
脚本运行效果
该脚本的运行效果如下所示:

核心代码实现
具体实现代码如下:
完整代码解析
# 网易云 根据歌单链接下载MP3歌曲
import requests
from bs4 import BeautifulSoup
def main():
url = "https://music.163.com/#/playlist?id=3136952023" # 歌单地址 请自行更换
if '/#/' in url:
url = url.replace('/#/', '/')
headers = {
'Referer': 'http://music.163.com/',
'Host': 'music.163.com',
'cookie': '自己去网站拿,获取方式在下边',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
}
s = requests.session()
try:
response = s.get(url, headers=headers).content
soup = BeautifulSoup(response, 'lxml')
lis = list(soup.find('ul'))
fatherlis = ['歌单名:' + str(soup.find('h2').string)]
for i in lis:
sonlis = []
sonlis.append(str(len(fatherlis)) + '.')
sonlis.append(i.a.string)
sonlis.append(str(i.a.get('href'))[str(i.a.get('href')).find('=') + 1:-1] + str(i.a.get('href'))[-1])
fatherlis.append(sonlis)
except:
print("\n\t歌曲链接输入错误")
exit('ERROR!')
format = '{0:<10}\t{1:{3}<10}\t{2:<10}'
print("从'{}'中找到了{}条歌曲".format(str(soup.find('h2').string), len(fatherlis) - 1))
print('-------------------------------------------------------------------------------------------------')
print('序号 歌曲名称 歌曲链接')
for i in fatherlis:
if fatherlis.index(i) == 0:
continue
else:
print(
format.format(i[0], i[1], 'http://music.163.com/song/media/outer/url?id=' + i[2] + '.mp3', chr(12288)))
download_music(i[2],i[1])
print('##########################下载完成##########################')
# 歌曲下载
def download_music(song_id,song_name):
file = "./music/" # 保存音乐的文件路径
wurl = "https://link.hhtjim.com/163/" # 外链地址
song_url = wurl + song_id + ".mp3"
# 获取歌曲16进制编码
song = requests.get(song_url).content
# 获取歌曲名称
# 保存文件
with open(file + song_name + '.mp3', 'wb') as f:
f.write(song)
if __name__ == '__main__':
main()
Cookie获取方法
关于Cookie的获取方法说明如下。
Cookie配置与下载启动
首先登录网易云音乐网页版 https://music.163.com/,在浏览器开发者工具中复制Cookie值。

将获取到的Cookie粘贴至代码对应位置,运行脚本即可开始下载歌曲。
以上就是关于Python下载网易云歌单歌曲的示例代码介绍,更多相关Python下载网易云歌单内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













