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之类的细节
Oct 13 Python
python实现list元素按关键字相加减的方法示例
Jun 09 Python
浅谈django开发者模式中的autoreload是如何实现的
Aug 18 Python
python 读取txt中每行数据,并且保存到excel中的实例
Apr 29 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
python实现ip代理池功能示例
Jul 05 Python
tensorflow 模型权重导出实例
Jan 24 Python
浅谈python 中的 type(), dtype(), astype()的区别
Apr 09 Python
Python之变量类型和if判断方式
May 05 Python
python 如何设置守护进程
Oct 29 Python
Python实现给PDF添加水印的方法
Jan 25 Python
利用Python将list列表写入文件并读取的方法汇总
Mar 25 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
通过ICQ网关发送手机短信的PHP源程序
2006/10/09 PHP
Mysql中分页查询的两个解决方法比较
2013/05/02 PHP
PHP使用GIFEncoder类生成gif动态滚动字幕
2014/07/01 PHP
javascript iframe编程相关代码
2009/12/28 Javascript
将两个div左右并列显示并实现点击标题切换内容
2013/10/22 Javascript
IE的事件传递-event.cancelBubble示例介绍
2014/01/12 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
2015/06/01 Javascript
详解js中class的多种函数封装方法
2016/01/03 Javascript
jQuery+ajax读取并解析XML文件的方法
2016/09/09 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
关于angular js_$watch监控属性和对象详解
2017/04/24 Javascript
jQuery实现表格冻结顶栏效果
2017/08/20 jQuery
详解Angular6.0使用路由步骤(共7步)
2018/06/29 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
2018/08/31 Javascript
vue实现带过渡效果的下拉菜单功能
2020/02/19 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
[01:16:12]完美世界DOTA2联赛PWL S2 FTD vs Inki 第一场 11.21
2020/11/23 DOTA
Python安装Numpy和matplotlib的方法(推荐)
2017/11/02 Python
python爬取微信公众号文章的方法
2019/02/26 Python
scrapy-redis源码分析之发送POST请求详解
2019/05/15 Python
对django2.0 关联表的必填on_delete参数的含义解析
2019/08/09 Python
kafka监控获取指定topic的消息总量示例
2019/12/23 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
Django关于admin的使用技巧和知识点
2020/02/10 Python
python实现启动一个外部程序,并且不阻塞当前进程
2020/12/05 Python
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
香港万宁官方海外旗舰店:香港健与美连锁店
2018/09/27 全球购物
Java语言程序设计测试题改错题部分
2014/07/22 面试题
个人简历自我评价
2014/01/06 职场文书
校园之星获奖感言
2014/01/29 职场文书
法人代表证明书格式
2014/10/01 职场文书
党员检讨书范文
2014/12/27 职场文书
升职自荐信怎么写
2015/03/05 职场文书
导游词之黄帝陵景区
2019/09/16 职场文书
Pyhton爬虫知识之正则表达式详解
2022/04/01 Python
把77A收信机改造成收音机
2022/04/05 无线电