批量下載B站視頻的方法


首先分析下b站的視頻地址構成,如https://www.bilibili.com/video/BV1BW411R7QK?p=1,是由視頻編號加節數組成,如p=1代表視頻列表的第一集, p=2等與視頻第二集。

所以類似爬蟲,我們可以循環使用腳本命令和第三下載工具,如wget或you-get(Python)實現批量下載

以Python結合you-get為例

import os

# 檢測you-get是否安裝,否則自動安裝
retu = os.popen('you-get').read()    
if not 'OPTION' in retu:
    print('安裝you-get中 . . .')
    os.system('pip install you-get')  
    print('you-get已就緒')
else:
    print('you-get已就緒!')

savePath = r'D:\Bilibili'   # 視頻下載目標文件夾
if not os.path.exists(savePath):
    os.makedirs(savePath)

# 循環拼接網址https://www.bilibili.com/video/BV1BW411R7QK?p=1
downloadPath = r'https://www.bilibili.com/video/BV1r541147cZ?p='
for page in range(1, 20):
    url = downloadPath + str(page)  
    cmd = 'you-get ' + ' --format=flv720 ' + url + ' -o ' + savePath  # 字符串拼接you-get命令,--format 指定視頻質量,不帶該參數則默認1080P
    os.system(cmd)

 

可以修改range范圍,開啟多個不同腳本來增加下載速度,測試最大支持5個進程同時下載

注意停止下載前,務必手動終止腳本,否則有可能會被拉黑IP,導致當天無法繼續下載。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM