赞
踩
哈喽大家好 ,今天咱们来实现一下批量下载ts格式文件后,如何合并为MP4视频。
网页文件下载其实都可以通过requests.get以文件流的形式获取,并以字节的形式写入本地文件即可。
代码如下:
import os
import requests
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、切换为批量任务,这样就可以使用通配符去批量下载文件了。
这个需要借助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感兴趣,想要学习pyhton,这里给大家分享一份Python全套学习资料,里面的内容都是适合零基础小白的笔记和资料,超多实战案例,不懂编程也能听懂、看懂。
需要的话可以微信扫描下方二维码免费获得。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python学习软件
学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
三、Python入门学习视频
还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
四、Python实战案例
光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
五、Python小游戏源码
如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
六、副业兼职
而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
七、资料领取
由于篇幅有限,很多资料图片放不上来。需要的小伙伴可以微信扫描下方CSDN官方认证二维码领取(免费免费免费)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。