Python批量下载bilibili的视频

原文地址

分类目录——万能的Python系列

功能的实现需要一个开源项目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命令进行下载。

你可能感兴趣的:(Python,#,小应用)