python爬取youtube视频的示例代码


Posted in Python onMarch 03, 2021

  这几天正在追剧,原名《大秦帝国之天下》的《大秦赋》,看着看着又想把前几部刷一遍了,但第一部《裂变》自己没有高清资源,搜了一波发现youtube上有个48集版的高清资源,有删减就有删减吧,就想着写个脚本批量下载一下,记录一下过程,主要是youtube1080p及以上的分辨率做了音视频分离,下载后需要用ffmpeg做一次音视频融合。参考了pytube模块。

1.下载音视频数据

pytube可以通过pip安装

$pip install pytube
from pytube import YouTube
url = 'https://www.youtube.com/watch?v=K5KG4FVaD5M&list=PLtt_YYUGi1gVlXrNAOQX5BsIXAeTdTrwj&index={}'.format(i)
result = YouTube(url)
print(url + ' ' + result.title)
result.streams.get_by_itag(137).download('D:/xdedzl/movie/video')
print('done {} video'.format(i))
result.streams.get_by_itag(251).download('D:/xdedzl/movie/audio')
print('done {} audio'.format(i))

  result.steams是一系列不同质量的音视频数据,打印出来如下图,可以根据get_by_itag来拿到对应的音视频,137对应1080p的视频,251对应160k的音频

python爬取youtube视频的示例代码

2.融合音视频数据

  使用ffmpeg融合音视频,命令如下,具体使用方式可自行查阅

ffmpeg -i video_path -i audio_path -c:v copy -c:a aac -strict -2 output_path

  写了个批处理融合了48集的音视频

echo off

set v=D:\xdedzl\movie\video\
set a=D:\xdedzl\movie\audio\
set o=D:\xdedzl\movie\
set /a i=1, b=49
:SymLoop

if %i% LSS %b% (
  echo %v%%i%.mp4
  echo %a%%i%.webm
  echo %o%%i%.mp4
  ffmpeg -i %v%%i%.mp4 -i %a%%i%.webm -c:v copy -c:a aac -strict -2 %o%%i%.mp4
  set /a "i+=1"
  GOTO :SymLoop 
)
pause

到此这篇关于python爬取youtube视频的文章就介绍到这了,更多相关python爬取youtube视频内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
Feb 24 Python
python通过floor函数舍弃小数位的方法
Mar 17 Python
用Python遍历C盘dll文件的方法
May 06 Python
Python编写Windows Service服务程序
Jan 04 Python
使用python和pygame绘制繁花曲线的方法
Feb 24 Python
详解python 注释、变量、类型
Aug 10 Python
python实现基于信息增益的决策树归纳
Dec 18 Python
Python多线程处理实例详解【单进程/多进程】
Jan 30 Python
python利用多种方式来统计词频(单词个数)
May 27 Python
如何用Python破解wifi密码过程详解
Jul 12 Python
使用Python的networkx绘制精美网络图教程
Nov 21 Python
pycharm不能运行.py文件的解决方法
Feb 12 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
Mar 03 #Python
解决pytorch 数据类型报错的问题
Mar 03 #Python
python反编译教程之2048小游戏实例
Mar 03 #Python
python 如何读、写、解析CSV文件
Mar 03 #Python
聊聊python在linux下与windows下导入模块的区别说明
Mar 03 #Python
python 递归相关知识总结
Mar 03 #Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
Mar 03 #Python
You might like
ecshop 批量上传(加入自定义属性)
2012/03/20 PHP
PHP实现今天是星期几的几种写法
2013/09/26 PHP
PHP延迟静态绑定示例分享
2014/06/22 PHP
PHP 生成微信红包代码简单
2016/03/25 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
2017/02/17 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
2019/10/11 PHP
JXTree对象,读取外部xml文件数据,生成树的函数
2007/04/02 Javascript
JavaScript Array扩展实现代码
2009/10/14 Javascript
javascript 特性检测并非浏览器检测
2010/01/15 Javascript
JS实现悬浮移动窗口(悬浮广告)的特效
2013/03/12 Javascript
javascript 获取图片尺寸及放大图片
2013/09/04 Javascript
javascript实现点击后变换按钮显示文字的方法
2015/05/13 Javascript
JavaScript代码实现禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt
2015/11/17 Javascript
jQuery基础知识点总结(DOM操作)
2016/06/01 Javascript
javascript数组定义的几种方法
2017/10/06 Javascript
Node.js模拟发起http请求从异步转同步的5种用法
2018/09/26 Javascript
js构造函数constructor和原型prototype原理与用法实例分析
2020/03/02 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
Python读取YUV文件,并显示的方法
2018/12/04 Python
Python判断一个文件夹内哪些文件是图片的实例
2018/12/07 Python
Python函数的定义方式与函数参数问题实例分析
2019/12/26 Python
python计算二维矩形IOU实例
2020/01/18 Python
Django 解决distinct无法去除重复数据的问题
2020/05/20 Python
opencv 图像轮廓的实现示例
2020/07/08 Python
Python中读取文件名中的数字的实例详解
2020/12/25 Python
CSS3 实现弹幕的示例代码
2017/08/07 HTML / CSS
一些Solaris面试题
2013/03/22 面试题
init进程的作用
2015/08/20 面试题
文员个人的求职信范文
2013/09/26 职场文书
乡领导班子四风问题对照检查材料
2014/09/25 职场文书
2015年小学辅导员工作总结
2015/05/27 职场文书
高三语文教学反思
2016/02/16 职场文书
励志语录:时光飞逝,请学会珍惜所有的人和事
2020/01/16 职场文书
SQLServer中JSON文档型数据的查询问题解决
2021/06/27 SQL Server
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android
如何在Python中妥善使用进度条详解
2022/04/05 Python