視頻下載腳本
基於
python
和you-git
編寫主流網站視頻下載腳本
windows
- 安裝最新版本的python3
- 在python3中使用命令:
pip3 install you-get
安裝you-get
模塊。
詳情見:https://github.com/soimort/you-get
適應python3.3以上版本 - 在cmd命令窗口運行如下代碼:
python file_name.py
注意事項:
- 系列視頻下載目前適用於bilibili
- 單個視頻下載模式,基本適用於當前主流視頻網站
- 如有其它問題可以參考 報錯信息在GitHub上的
you-get
部分進行查詢排錯
腳本代碼如下:
#coding=utf-8
import os
def video_download():
"""
基於python和you-git第三方下載包下載相關視頻
安裝方法:pip3 install you-get 詳情見:https://github.com/soimort/you-get
適應python3.3以上版本
"""
download_category = input("請選擇下載視頻類型:單個視頻請輸入1,系列視頻請輸入2\
(系列視頻下載目前適用於嗶哩嗶哩);或者輸入“q”/“ctrl+c”退出程序: ")
if download_category == 'q':
quit()
elif download_category == '1':
# 單個視頻下載
video_path = input("請輸入視頻鏈接:")
down_path = "you-get" + " " + video_path
download(down_path)
elif download_category == '2':
list_download()
else:
print("請按照提示說明輸入數值!")
def list_download():
"""下載bilibili的系列視頻"""
download_method = int(input("請選擇下載方式:全部下載請輸入1,單集下載請輸入2,連續下載請輸入3:"))
if download_method == 1:
video_path = input("請輸入視頻系列總鏈接:")
video_count = int(input("請輸入該視頻總集數:"))
for i in range(1,int(video_count)+1):
if video_count == 1:
down_path = "you-get" + " " + video_path
else:
down_path = "you-get" + " " + video_path + "?p=" + str(i)
download(down_path)
elif download_method == 2:
video_path = input("請輸入視頻系列總鏈接:")
video_index = input("請輸入需要下載的集數:")
down_path = "you-get" + " " + video_path + "?p=" + str(video_index)
download(down_path)
elif download_method == 3:
video_path = input("請輸入視頻系列總鏈接:")
video_start = input("請輸入起始下載視頻集數:")
video_end = input("請輸入截至下載視頻集數:")
# 加入鏈接和集數合法性驗證
for i in range(int(video_start),int(video_end)+1):
down_path = "you-get" + " " + video_path + "?p=" + str(i)
download(down_path)
else:
print("請按提示要求輸入數值!")
def download(down_path):
"""視頻下載"""
print("視頻下載鏈接:", down_path)
# message = os.popen(down_path) # 返回cmd輸入後返回信息
message = os.system(down_path)
print("message", message)
def quit():
"""退出"""
print('退出程序...')
if __name__ == '__main__':
video_download()