python下载哔哩哔哩视频
通过you-get模块来实现对哔哩哔哩视频的下载,you-get 模块需要自己下载,在控制台输入
pip3 install you-get 即可下载,下载完成后输入you-get --help即可检验

安装后输出如上图
代码如下
import os
import re
import subprocessdef menu(quality):for i in range(len(quality)):print(i,quality[i])return int(input('请选择清晰度'))def capture_cmd_output(command):# 执行CMD命令,并将标准输出和错误输出保存到变量中process = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)output, error = process.communicate()# 将输出内容转换为字符串类型,并去除末尾的换行符output = output.decode().rstrip()error = error.decode().rstrip()return output, error# 示例命令,执行dir命令查看当前目录下的文件列表
url = input('请输入视频链接')
cmd = f'you-get -i "{url}"'# 执行命令并获取输出和错误信息
output, error = capture_cmd_output(cmd)# 输出结果
print("获取到的CMD输出内容:")
if output:pass
if error:print("错误信息:", error)
output = output.replace('\r','')
print(output)
# 清晰度
quality = re.findall('quality: (.*?)\n',output)
# 下载格式以及清晰度
data = re.findall('(--format=.*?) ',output)
# 视频格式
container = re.findall('container: (.*?)\n',output)
# 视频标题
title = re.findall('title: (.*?)\n',output)[0]
title = title
n = menu(quality)
if not os.path.exists('电影'):os.mkdir('电影')
commod = f'you-get --no-caption -o 电影 -O {title} {data[n]} {url}'
# 下载视频
os.system(commod)
在代码中,我使用subprocess模块来实现抓取控制台输出的功能,通过此模块来实现下载视频清晰度的选择
此代码也可以实现对爱奇艺以及优酷等视频的下载,但是无法下载vip视频,如果想要下载vip视频则需要在代码中添加登录后的cookie,否则无法下载vip视频
此外,如果无法下载的话可能是需要安装ffmpeg软件,具体如何安装在之前的博客里
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
