- 基礎版
import requests url = "http://mp.111ttt.cn/mp3free/81135985.mp3" rsp = requests.get(url, stream=True) with open('1.mp3', 'wb') as f: for i in rsp.iter_content(chunk_size=1024): # 邊下載邊存硬盤, chunk_size 可以自由調整為可以更好地適合您的用例的數字 f.write(i)
- 晉級版
# 下載MP3文件到本地 import os import requests def DownloadFile(mp3_url, save_url,file_name): try: if mp3_url is None or save_url is None or file_name is None: print('參數錯誤') return None # 文件夾不存在,則創建文件夾 folder = os.path.exists(save_url) if not folder: os.makedirs(save_url) # 讀取MP3資源 res = requests.get(mp3_url,stream=True) # 獲取文件地址 file_path = os.path.join(save_url, file_name) print('開始寫入文件:', file_path) # 打開本地文件夾路徑file_path,以二進制流方式寫入,保存到本地 with open(file_path, 'wb') as fd: for chunk in res.iter_content(chunk_size=1024): fd.write(chunk) print(file_name+' 成功下載!') except: print("程序錯誤")
if __name__ == "__main__": # MP3源地址url url = 'http://mp.111ttt.cn/mp3free/81135985.mp3' # MP3保存文件夾 save_url='./music/' # MP3文件名 file_name = 'mymusic'+'.mp3' DownloadFile(url,save_url, file_name)
- 升級版
def DownloadFile2(mp3_url, save_url,file_name): try: if mp3_url is None or save_url is None or file_name is None: print('參數錯誤') return None # 文件夾不存在,則創建文件夾 folder = os.path.exists(save_url) if not folder: os.makedirs(save_url) # 讀取MP3資源 res = requests.get(mp3_url,stream=True) total_size = int(int(res.headers["Content-Length"])/1024+0.5) # 獲取文件地址 file_path = os.path.join(save_url, file_name) # 打開本地文件夾路徑file_path,以二進制流方式寫入,保存到本地 from tqdm import tqdm with open(file_path, 'wb') as fd: print('開始下載文件:{},當前文件大小:{}KB'.format(file_name,total_size)) for chunk in tqdm(iterable=res.iter_content(1024),total=total_size,unit='k',desc=None): fd.write(chunk) print(file_name+' 下載完成!') except: print("程序錯誤")
# MP3源地址url mp3_url = 'http://mp.111ttt.cn/mp3free/81135985.mp3' # MP3保存文件夾 save_url='./music/' # MP3文件名 file_name = '少年-夢然.mp3' DownloadFile2(mp3_url,save_url, file_name)
- 裝逼版
for file_name,mp3_url in zip(musicnamelst[:2],musicurllst[:2]): DownloadFile2(mp3_url,save_url, file_name+'.mp3')
如果要全量下載,去掉索引
for file_name,mp3_url in zip(musicnamelst,musicurllst): DownloadFile2(mp3_url,save_url, file_name+'.mp3')
太多了,部分截圖