官方文档传送门:https://github.com/soimort/you-get/wiki/中文说明
you-get 大法之功用:
- 下载流行网站之音视频,例如 YouTube、Youku、TED、土豆以及更多
- 于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告
- 下载您喜欢的网页上的图片
- 下载任何非 HTML 内容,例如二进制文件
安装:
1、you-get 的官方版本通过 PyPI 分发, 可从 PyPI 镜像中通过 pip 包管理器进行安装:
pip install you-get -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
2、安装上 FFmpeg,下载地址:https://www.gyan.dev/ffmpeg/builds/,找到文件最大的那个下载就对了。
解压文件,进入bin目录,能看到ffmpeg.exe、ffplay.exe、ffprobe.exe三个文件。然后把该路径添加到环境变量path。
打开cmd输入 ffmpeg –version 如果显示版本号,证明安装成功了。
实战:
下面我们进入实战,我们以B站为例:
当观赏感兴趣的视频时,您可以使用 —info/-i 以查看所有可用画质与格式:
you-get -i https://www.bilibili.com/video/BV1Kh411X7n8?t=28
稍等片刻,我们会看到相关信息:
- 标有 DEFAULT 为默认画质,如果希望保存为其他格式(mp4),可以使用 -i 查看所有可用画质与格式给出的其他选项进行下载。
- 使用其他选项进行下载:download-with(之后的):you-get —format=。。。URL
- 使用 —output-dir/-o 设定路径,—output-filename/-O 设定输出文件名
- 下载过程中可以使用 Ctrl+C 暂停下载
比如我们要下载第一个格式为 flv,并且输出到D盘的test路径下,我们改如何写呢?
you-get -o D:\test --format=flv https://www.bilibili.com/video/BV1Kh411X7n8

如果想下载列表,在地址前面加 —playlist :
you-get -o D:\test --format=flv --playlist https://www.bilibili.com/video/BV1RE411C7t5
不过下载速度一直空六七百K左右,不会太快。
在 Python 中使用:
import sysfrom you_get import common as you_get # 导入you-get库# 设置下载目录directory = r'D:\test'# 要下载的视频地址url = 'https://www.bilibili.com/video/BV1me411W7J5'# 传参数sys.argv = ['you-get', '-o', directory, '--format=flv', url]you_get.main()
参数:
usage: you-get [OPTION]... URL...A tiny downloader that scrapes the weboptional arguments:-V, --version Print version and exit-h, --help Print this help message and exitDry-run options:(no actual downloading)-i, --info Print extracted information-u, --url Print extracted information with URLs--json Print extracted URLs in JSON formatDownload options:-n, --no-merge Do not merge video parts--no-caption Do not download captions (subtitles, lyrics, danmaku,...)-f, --force Force overwriting existing files--skip-existing-file-size-checkSkip existing file without checking file size-F STREAM_ID, --format STREAM_IDSet video format to STREAM_ID-O FILE, --output-filename FILESet output filename-o DIR, --output-dir DIRSet output directory-p PLAYER, --player PLAYERStream extracted URL to a PLAYER-c COOKIES_FILE, --cookies COOKIES_FILELoad cookies.txt or cookies.sqlite-t SECONDS, --timeout SECONDSSet socket timeout-d, --debug Show traceback and other debug info-I FILE, --input-file FILERead non-playlist URLs from FILE-P PASSWORD, --password PASSWORDSet video visit password to PASSWORD-l, --playlist Prefer to download a playlist-a, --auto-rename Auto rename same name different files-k, --insecure ignore ssl errorsProxy options:-x HOST:PORT, --http-proxy HOST:PORTUse an HTTP proxy for downloading-y HOST:PORT, --extractor-proxy HOST:PORTUse an HTTP proxy for extracting only--no-proxy Never use a proxy-s HOST:PORT or USERNAME:PASSWORD@HOST:PORT, --socks-proxy HOST:PORT or USERNAME:PASSWORD@HOST:PORTUse an SOCKS5 proxy for downloading
注意:
如果 you-get 出现问题,不要惊慌. (是的,问题一直存在!),看看是不是在 https://github.com/soimort/you-get/wiki/Known-Bugs里面,搜索 开放Issue,如果没人报告,开个新issue,加上详细的命令行输出。
