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 相关文章推荐
Python中文件遍历的两种方法
Jun 16 Python
Python编程之列表操作实例详解【创建、使用、更新、删除】
Jul 22 Python
基于Django与ajax之间的json传输方法
May 29 Python
详解Django的CSRF认证实现
Oct 09 Python
对Python中plt的画图函数详解
Nov 07 Python
python实现贪吃蛇游戏
Mar 21 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
python中字符串数组逆序排列方法总结
Jun 23 Python
python按比例随机切分数据的实现
Jul 11 Python
使用Python实现图像标记点的坐标输出功能
Aug 14 Python
Python numpy大矩阵运算内存不足如何解决
Nov 19 Python
Python3+SQLAlchemy+Sqlite3实现ORM教程
Feb 16 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
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
2012/12/07 PHP
yii实现CheckBox复选框在同一行显示的方法
2014/12/03 PHP
yii框架redis结合php实现秒杀效果(实例代码)
2017/10/26 PHP
Javascript中的数学函数
2007/04/04 Javascript
js刷新框架子页面的七种方法代码
2008/11/20 Javascript
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
深入理解JavaScript系列(4) 立即调用的函数表达式
2012/01/15 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
javascript批量修改文件编码格式的方法
2015/01/27 Javascript
基于JavaScript如何制作遮罩层对话框
2016/01/26 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
jq给页面添加覆盖层遮罩的实例
2017/02/16 Javascript
jQuery选择器之子元素过滤选择器
2017/09/28 jQuery
axios中cookie跨域及相关配置示例详解
2017/12/20 Javascript
微信小程序实现无限滚动列表
2020/05/29 Javascript
微信小程序 生成携带参数的二维码
2019/10/23 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
[56:47]Ti4 循环赛第三日 iG vs Liquid
2014/07/12 DOTA
Django中实现一个高性能计数器(Counter)实例
2014/07/09 Python
100行python代码实现跳一跳辅助程序
2018/01/15 Python
python执行系统命令后获取返回值的几种方式集合
2018/05/12 Python
使用Python+wxpy 找出微信里把你删除的好友实例
2019/02/21 Python
postman传递当前时间戳实例详解
2019/09/14 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
亚洲航空公司官方网站:AirAsia
2019/11/25 全球购物
教师应聘个人求职信
2013/12/10 职场文书
行政人事经理职位说明书
2014/03/05 职场文书
领导班子个人查摆问题对照检查材料
2014/10/02 职场文书
2014年设备管理工作总结
2014/11/26 职场文书
小区保洁员岗位职责
2015/04/10 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
关于观后感的作文
2015/06/18 职场文书
2016大学军训心得体会
2016/01/11 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
比较node.js和Deno
2021/04/27 Javascript