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 获取文件列表(或是目录例表)
Mar 25 Python
Linux下使用python自动修改本机网关代码分享
May 21 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
Dec 14 Python
python3爬虫获取html内容及各属性值的方法
Dec 17 Python
python实现浪漫的烟花秀
Jan 30 Python
Python学习笔记之pandas索引列、过滤、分组、求和功能示例
Jun 03 Python
在python中利用numpy求解多项式以及多项式拟合的方法
Jul 03 Python
python破解bilibili滑动验证码登录功能
Sep 11 Python
利用Python校准本地时间的方法教程
Oct 31 Python
django正续或者倒序查库实例
May 19 Python
python适合做数据挖掘吗
Jun 16 Python
Django windows使用Apache实现部署流程解析
Oct 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
thinkPHP3.2.3实现阿里大于短信验证的方法
2018/06/06 PHP
Laravel5.1 框架表单验证操作实例详解
2020/01/07 PHP
ExtJS扩展 垂直tabLayout实现代码
2009/06/21 Javascript
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
2013/11/14 Javascript
js 获取、清空input type="file"的值(示例代码)
2013/12/24 Javascript
Js Jquery创建一个弹出层可加载一个页面
2014/05/08 Javascript
扒一扒JavaScript 预解释
2015/01/28 Javascript
js实现支持手机滑动切换的轮播图片效果实例
2015/04/29 Javascript
JavaScript实现点击按钮切换网页背景色的方法
2015/10/17 Javascript
JavaScript数组去重的五种方法
2015/11/05 Javascript
基于Layer+jQuery的自定义弹框
2020/05/26 Javascript
JavaScript实现拖拽元素对齐到网格(每次移动固定距离)
2016/11/30 Javascript
jquery 仿锚点跳转到页面指定位置的实例
2017/02/14 Javascript
vue基于Vue2.0和高德地图的地图组件实例
2017/04/28 Javascript
vue-router两种模式区别及使用注意事项详解
2019/08/01 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
微信小程序间使用navigator跳转传值问题实例分析
2020/03/27 Javascript
Vue单文件组件开发实现过程详解
2020/07/30 Javascript
python使用urlparse分析网址中域名的方法
2015/04/15 Python
使用python3.5仿微软记事本notepad
2016/06/15 Python
详解Python的collections模块中的deque双端队列结构
2016/07/07 Python
基于python OpenCV实现动态人脸检测
2018/05/25 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
2019/06/03 Python
python Gunicorn服务器使用方法详解
2019/07/22 Python
python命令 -u参数用法解析
2019/10/24 Python
Python如何基于smtplib发不同格式的邮件
2019/12/30 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
Melissa香港官网:MDreams
2016/07/01 全球购物
《桃花心木》教学反思
2014/02/17 职场文书
高中生职业生涯规划书
2014/02/24 职场文书
2014年乡镇党建工作总结
2014/11/11 职场文书
《跨越海峡的生命桥》教学反思
2016/02/18 职场文书
微信小程序和php的登录实现
2021/04/01 PHP
灵能百分百第三季什么时候来?
2022/03/15 日漫
「SHOW BY ROCK!!」“雫シークレットマインド”组合单曲MV公开
2022/03/21 日漫
关于CSS自定义属性与前端页面的主题切换问题
2022/03/21 HTML / CSS