一、准备工作

1、安装python,详见https://www.cnblogs.com/cnwuchao/p/10562416.html

2、安装ffmpeg,详见https://www.cnblogs.com/cnwuchao/p/10562455.html

3、安装youtube-dl,详见https://www.cnblogs.com/cnwuchao/p/10562502.html

4、科学上网工具自备,详见https://www.seoimo.com/wordpress-vps/#putty-ssh-vpshttps://www.wervps.com/we/1162.html

二、下载YouTube视频

1、查看视频所有类型,只看不下载:

youtube-dl -F [url]
youtube-dl --list-formats [url]

这个只是列出清单信息,并不会下载视频,我们可以看一看有哪些格式可以下载,然后再选择下载,最左边一列就是编号对应着不同的格式。

2、下载视频和音频并主动合并

youtube-dl -f [format code] [url]           //下载指定格式的视频和音频,如youtube-dl -f 135+140 [url]
youtube-dl -f bestvideo+bestaudio [url] //下载质量最好的视频和音频

如果系统中安装了ffmpeg的话,youtube-dl会自动合并已经下载好的音频和视频,然后自动删除单独的音视频文件。

3、下载字幕

youtube-dl --write-sub [url]                           //这样是会下载一个vtt格式的英文字幕和视频
youtube-dl --write-sub --skip-download [url] //下载单独的vtt字幕文件,而不会下载视频
youtube-dl --write-sub --all-subs [url] //下载所有语言的字幕(如果有的话)
youtube-dl --write-auto-sub [url] //下载自动生成的字幕(YouTube only)
youtube-dl --sub-format srt --sub-lang english [url] //下载srt格式,并且语言是英文的字幕

4、下载视频列表

youtube-dl -f [format code] [playlist_url]        //下载指定清晰度(format code)的整个列表的视频
youtube-dl -f bestvideo+bestaudio [playlist_url] //下载视频列表,用质量最好的视频和音频格式
youtube-dl [playlist_url] //下载视频列表,这种方式下载的视频可能是mkv格式或者webm格式

5、youtube-dl还有很多参数

github项目地址:https://github.com/rg3/youtube-dl/

相关参数的翻译:https://www.cnblogs.com/cnwuchao/p/10562502.html

6、其他

youtube-dl-gui(基于youtube-dl的GUI软件):https://github.com/MrS0m30n3/youtube-dl-gui

youtube-dl-gui汉化:https://www.52pojie.cn/thread-766582-1-1.html

you-get:https://github.com/soimort/you-get

使用python+ffmpeg+youtube-dl下载youtube上的视频的更多相关文章

  1. 如何使用python下载网站上的视频

    youtube-dl 从名字上也能看出来,是专门用来下载YouTube的视频. 不过本人对YouTube不感兴趣,但是这个模块可以用来下载bilibili上的视频我们就来试一试 首先pip insta ...

  2. Python:使用youtube-dl+ffmpeg+FQ软件下载youtube视频

    声明:本文所述内容都是从http://blog.csdn.net/u011475134/article/details/71023612博文中学习而来. 背景: 一同学想通过FQ软件下载一些youtu ...

  3. Jenkins 使用python进行调度,并下载apphost上的安装包

    在持续集成的过程中,Jenkins工具是我们必须要会用的工具,那么今天分享一个使用python对Jenkins进行调度的案例 使用的是python-jenkins 库,借用selenium登陆jenk ...

  4. 如何下载网页上的视频和flash的方法

    下面介绍一种下载视频的简便方法,这种方法不需要安装任何下载软件,而且适合所有 FLV(Flash Video)格式的视频文件. 第一步 清空Temporary Internet Files(临时网络文 ...

  5. 如何下载网页上的视频 并且 flv 格式转化成 MP4

    链接:http://www.jb51.net/softjc/222135.html https://jingyan.baidu.com/article/25648fc162f2899190fd0042 ...

  6. 【图文教学】如何轻松下载tiktok上的视频

    我是真诚的想和大家分享这个办法的!这个叫光影存图,图标就是这个绿色的箭头,我是苹果手机,安卓手机也可以用,就是它分免费版和会员版的,没有强制要你充会员,看一下广告就可以获取下载次数,我就是这么干的,只 ...

  7. 老司机教你下载tumblr上视频和图片的正确姿势

    本文面向初学者. 很多同学问我:“我非常想学Python编程,但是找不到兴趣点”. 还有的同学呢,找到了很好的兴趣点,但是无从下手,“玄魂老师,我想下载tumblr上的视频, 怎么下载,Python能 ...

  8. 小白学Python(7)——利用Requests下载网页图片、视频

    安装 Requests 如果安装了Requests就已经可用了,否则要安装 Requests,只要在你的CMD中运行这个简单命令即可: pip install requests requests使用 ...

  9. python爬虫脚本下载YouTube视频

    python爬虫脚本下载YouTube视频 爬虫 python YouTube视频 工作环境: python 2.7.13 pip lxml, 安装 pip install lxml,主要用xpath ...

随机推荐

  1. C# 队列(Queue)和 堆栈(Stack)

    C# 队列(Queue)和 堆栈(Stack) C# 队列(Queue) 队列(Queue)代表了一个先进先出的对象集合.当您需要对各项进行先进先出的访问时,则使用队列.当您在列表中添加一项,称为入队 ...

  2. Java多线程-----创建线程的几种方式

       1.继承Thread类创建线程 定义Thread类的子类,并重写该类的run()方法,该方法的方法体就是线程需要完成的任务,run()方法也称为线程执行体 创建Thread子类的实例,也就是创建 ...

  3. jQuery选择器--:selected和:checked

    :selected 概述 匹配所有选中的option元素 <!DOCTYPE html> <html> <head> <meta charset=" ...

  4. 【Hive学习之二】Hive SQL

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...

  5. locust 的使用

    Contents Locust这一款开源性能测试工具.然而,当前在网络上针对Locust的教程极少,不管是中文还是英文,基本都是介绍安装方法和简单的测试案例演示,但对于较复杂测试场景的案例演示却基本没 ...

  6. JustOj 1036: 习题6.11 迭代法求平方根

    题目描述 用迭代法求 .求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001. 输出保留3位小数 输入 X 输出 X的平方根 样例输 ...

  7. js 简易时钟

    html部分 <div id="clock"> </div> css部分 #clock{ width:600px ; text-align: center; ...

  8. 模板(Template)系统

    一.常用语法 官方文档 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 1.1变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板 ...

  9. iOS项目之报错笔记

    问题一: linker command failed with exit code 1 (use -vto see invocation) 原因:导入了.m的头文件,导致同时有两个一样的.m文件在编译 ...

  10. Dubbox分布式框架之入门

    Dubbox简介 Dubbox是一个分布式服务框架,其前身是阿里巴巴开源项目Dubbox,被国内电商及换联网项目中使用,后期阿里巴巴停止了该项目的维护,当当网便在Dubbo基础上进行优化,并继续维护, ...