使用Python批量下载ts格式视频,并合并为mp4格式,非常简单,ts文件下载网页文件
使用Python批量下载ts格式视频,并合并为mp4格式,非常简单,ts文件下载网页文件
哈喽大家好
今天咱们来实现一下批量下载ts格式文件后,如何合并为MP4视频。
ts文件下载
网页文件下载其实都可以通过requests.get以文件流的形式获取,并以字节的形式写入本地文件即可。
代码如下:
import os import requests # Python学习资料白嫖扣裙:708525271 def download(url, filenames, dirname): session = requests.Session() for filename in filenames: print(u"downloading: %s" % filename) r = session.get(url + filename, stream=True).iter_content(chunk_size=1024 * 1024) filepath = os.path.join(dirname, filename) print(u"saving: %s" % filename) with open(filepath, 'wb') as f: for chunk in r: chunk and f.write(chunk) print(u"finished: %s" % filename)
我发现在保存这一步会存在性能卡点(打印saving之后等了很久都没有生成文件),暂时没有想到很好的优化方法,不过下载这一步其实可以借用迅雷来批量处理,步骤如下:
1、点击新建。
2、切换为批量任务,这样就可以使用通配符去批量下载文件了。
ts文件合并为mp4
这个需要借助ffmpeg工具去实现。Windows平台可以直接到官网下载压缩包,解压之后把bin目录加入到环境变量中即可。
最后使用ffmpeg合并ts文件的代码如下:
import os def merge(filenames, dirname, video='video.mp4'): # 先用一个文件保存所有的文件路径(格式:file '***.ts') path = os.path.join(dirname, 'path.txt') with open(path, 'w+') as f: for filename in filenames: f.write("file '%s'\n" % os.path.join(filename)) os.chdir(dirname) os.system('ffmpeg -f concat -safe 0 -y -i %s -c copy -strict -2 %s' % (path, os.path.join(dirname, video)))
好了,今天的分享就到这结束了,下次见。
相关内容
- 如何通过Python将JSON格式文件导入redis?,本文分享自华
- 使用Python采集某网站视频,实现音视频自动合成!,开
- 【爬虫数据集】滇西小哥YouTube频道TOP10热门视频的热评
- < Python全景系列-4 > 史上最全文件类型读写库
- Python使用MoviePy轻松搞定视频编辑,
- HDF格式遥感影像批量转为TIFF格式:ArcPy实现,首先,来
- Python实现人脸识别,对视频跟踪打码,拒绝少儿不宜!
- Python写一个下载B站内容的GUI工具,视频、弹幕、评论都
- 西瓜视频视频颜值区如此惊艳,看我只用30行Python代码
- Python导入Excel表格数据并以字典dict格式保存,我们以如
评论关闭