Python批量下載bilibili的視頻

原文地址

功能的實現需要一個開源項目you-get的支持,關於它的使用我寫過一篇 下載網絡上的多媒體(視頻、音頻、圖片),這裏我通過Python程序拼接並執行cmd命令的方式實現批量下載。

直接上程序,在註釋中進行說明

import os

# 需要一個支持的工具包,如果沒有,就自動安裝
retu = os.popen('you-get').read()	# 執行you-get命令,獲取返回值
if not 'OPTION' in retu:
    print('安裝支持插件ing,請稍後 . . .')
    os.system('pip install you-get')  # 安裝you-get工具
    print('環境已OK!')
else:
    print('環境已OK!')

savePath = r'E:\Test'   # 根據你的物理環境自行設定,不存在的話會自行創建這麼一個文件夾
# 如果savePath不存在,就新建這麼一個目錄
if not os.path.exists(savePath):
    os.makedirs(savePath)

# 循環拼接搞網址,用的是bilibili的,它的網址比較單一化
# https://www.bilibili.com/video/av16378934?p=1
# 上面是它第一個教程的網址,多觀察幾個就發現,這些網址只有 p=n 只有這個n不同,所有的教程是1-18
downloadPath = r'https://www.bilibili.com/video/av16378934?p='
for page in range(1, 19):
    url = downloadPath + str(page)  # 這有點兒爬蟲的意思,拼接url地址
    cmd = 'you-get ' + url + ' -o ' + savePath  # 拼接you-get命令
    os.system(cmd)

如果對分辨率或者文件類型有要求可以參見 下載網絡上的多媒體(視頻、音頻、圖片)you-get

如果要從不同的站點下載視頻,可以手動+自動做一個url的列表,然後for url in list:在循環體內拼接you-get命令進行下載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章