首页 > 编程知识 正文

网易云怎么下载mp3?

时间:2023-11-22 07:35:28 阅读:292184 作者:VTQX

如果你想在网易云音乐中下载mp3文件,可以使用Python编写的代码来完成这个任务。

一、安装必要的库

在使用Python编写下载程序之前,需要安装两个必要的库:requests和os。

import requests
import os

二、获取歌曲信息

在网易云音乐中下载mp3文件需要提供以下信息:歌曲id、歌曲名称、歌手名称。

song_id = "431109408"
song_name = "绅士"
artist_name = "薛之谦"

三、获取歌曲下载地址

获取歌曲下载地址需要使用网易云音乐的API接口。

url = "http://music.163.com/api/song/detail/?id="+song_id+"&ids=["+song_id+"]"
html = requests.get(url).text
json_dict = json.loads(html)
mp3_url = json_dict['songs'][0]['mp3Url']

四、下载歌曲

可以将歌曲下载到本地的指定目录下,也可以直接下载到当前目录下。

path = "D:/Music/"+artist_name+"/"+song_name+".mp3"

if not os.path.exists("D:/Music/"+artist_name):
    os.makedirs("D:/Music/"+artist_name)
    print("目录创建成功!")

if not os.path.exists(path):
    r = requests.get(mp3_url)
    
    with open(path, "wb") as f:
        f.write(r.content)
        print(song_name+"下载完成!")
else:
    print(song_name+"已存在!")

五、完整代码示例

import requests
import os
import json

song_id = "431109408"
song_name = "绅士"
artist_name = "薛之谦"

url = "http://music.163.com/api/song/detail/?id="+song_id+"&ids=["+song_id+"]"
html = requests.get(url).text
json_dict = json.loads(html)
mp3_url = json_dict['songs'][0]['mp3Url']

path = "D:/Music/"+artist_name+"/"+song_name+".mp3"

if not os.path.exists("D:/Music/"+artist_name):
    os.makedirs("D:/Music/"+artist_name)
    print("目录创建成功!")

if not os.path.exists(path):
    r = requests.get(mp3_url)
    
    with open(path, "wb") as f:
        f.write(r.content)
        print(song_name+"下载完成!")
else:
    print(song_name+"已存在!")

在上面的代码中,我们指定了歌曲id、歌曲名称和歌手名称,然后通过API接口获取到歌曲的下载地址,并将歌曲下载到指定目录下。

六、小结

通过使用上面的Python代码,你可以轻松地在网易云音乐中下载mp3文件。同时,你可以根据自己的需要,修改代码中的歌曲信息和下载路径,来实现歌曲的批量下载等功能。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。