释放双眼,带上耳机,听听看~!
网易云歌单歌曲 ,目前还仅仅只是实现这个功能,没有定义函数,也没有加入异常处理的部分
import urllib.request import re import os import requests from tqdm import tqdm #获取url url = input('url:') #传入headers header = {'authority': 'https://music.163.com/', 'user-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',} #获得网页源码 r = requests.get(url, headers=header).text #获得歌单名 title = re.search(r'>(.+)</h2>', r).group(1) #获得歌曲列表[('id', 'name')] songList = re.findall(r'/song\?id=(\d+)">(.+?)</a>', r) print('歌单:', title) #API源于:https://github.com/messoer(原作者要求) API = 'https://v1.itooi.cn/netease/url?quality=flac&id=' #创建[歌单名]文件夹 if os.path.exists(title) == False: os.mkdir(title) #下载 for i in tqdm(songList): #歌名合法化 rule = '[\\s\\\\/:\\*\\?\\\"<>\\|]' musicName = re.sub(rule, '-', i[1]) #路径+歌名 Name = '.\\' + title + '\\' + musicName #获取下载链接 Url = API + i[0] #获取真实链接 song = urllib.request.urlopen(Url) #判断后缀 try : if (song.geturl()[-3:]) == 'lac' : #加后缀 flac = Name + '.flac' #下载 urllib.request.urlretrieve(Url, flac) else : mp3 = Name + '.mp3' urllib.request.urlretrieve(Url, mp3)
666