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中操作MySQL入门实例
Feb 08 Python
自己使用总结Python程序代码片段
Jun 02 Python
JSONLINT:python的json数据验证库实例解析
Nov 28 Python
酷! 程序员用Python带你玩转冲顶大会
Jan 17 Python
python绘制地震散点图
Jun 18 Python
python爬虫之自制英汉字典
Jun 24 Python
对python中GUI,Label和Button的实例详解
Jun 27 Python
Python企业编码生成系统总体系统设计概述
Jul 26 Python
python系统指定文件的查找只输出目录下所有文件及文件夹
Jan 19 Python
python实现连连看游戏
Feb 14 Python
基于python实现复制文件并重命名
Sep 16 Python
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
Apr 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
php获取指定日期之间的各个周和月的起止时间
2014/11/24 PHP
php基于Snoopy解析网页html的方法
2015/07/09 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
PHP 的Opcache加速的使用方法
2017/12/29 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
javascript 多级checkbox选择效果
2009/08/20 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
javascript中typeof的使用示例
2013/12/19 Javascript
JS父页面与子页面相互传值方法
2014/03/05 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
详解Webpack-dev-server的proxy用法
2018/09/08 Javascript
[00:12]DAC2018 no[o]ne亮相SOLO赛 他是否如他的id一样无人可挡?
2018/04/06 DOTA
[38:23]完美世界DOTA2联赛循环赛 FTD vs PXG BO2第二场 11.01
2020/11/02 DOTA
从Python程序中访问Java类的简单示例
2015/04/20 Python
基于Python实现通过微信搜索功能查看谁把你删除了
2016/01/27 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
python处理两种分隔符的数据集方法
2018/12/12 Python
使用Python画股票的K线图的方法步骤
2019/06/28 Python
python词云库wordCloud使用方法详解(解决中文乱码)
2020/02/17 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
香港通票:Hong Kong Pass
2019/02/26 全球购物
Vinatis德国:法国领先的葡萄酒邮购公司
2020/09/07 全球购物
资产评估专业大学生求职信
2013/09/29 职场文书
2014年村党支部工作总结
2014/12/04 职场文书
玄武湖导游词
2015/02/05 职场文书
幼儿园中秋节活动总结
2015/03/23 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
盗窃案辩护词
2015/05/21 职场文书
新兵入伍决心书
2015/09/22 职场文书
mysq启动失败问题及场景分析
2021/07/15 MySQL
Nginx本地配置SSL访问的实例教程
2022/05/30 Servers