UC手机浏览器本地m3u8流媒体缓存碎片批量合并为视频
import os
from PyQt5. QtWidgets import QApplication , QFileDialog
import shutil
from Crypto.Cipher import AES#无加密合并
def merge_type_0(name,checklist):with open ( name +'.mp4','wb+') as f1:for i in checklist:f2=open(i,'rb')f1.write(f2.read())f2.close() f1.close()return 1#普通加密合并
def merge_type_1(name,kye,checklist):cryptor = AES.new(kye.encode('utf-8'), AES.MODE_CBC,kye.encode('utf-8'))with open ( name +'.mp4','wb+') as f1:for i in checklist:f2=open(i,'rb')f1.write(cryptor.decrypt(f2.read()))f2.close() f1.close()return 1#偏移加密合并
def merge_type_2(name,kye,iv,checklist):cryptor = AES.new(kye, AES.MODE_CBC,iv.encode('utf-8'))with open ( name +'.mp4','wb+') as f1:for i in checklist:f2=open(i,'rb')f1.write(cryptor.decrypt(f2.read()))f2.close() f1.close()return 1a=QApplication([''])#选择文件夹,该文件夹为m3u8目录文件所存放的文件夹
directory2 = QFileDialog.getExistingDirectory(caption="选择目录文件夹",directory= "/")
print('程序开始运行……')doclist=os.listdir(directory2)
for d in doclist:directory3=directory2 + '/' + dchecklist=[]sp_type=0with open (directory3,'r')as file:context=file.readlines()for i in range(len(context)):if '#EXTINF:' in context[i]:if os.path.exists('.'+context[i+1].strip())==False:breakchecklist.append('.'+context[i+1].strip())if 'EXT-X-KEY:' in context[i]:if 'IV=0x'in context[i]:sp_type=2iv=context[i].strip()[-32:-16]kye_path='.'+context[i].split(',')[1][5:-1]if os.path.exists(kye_path)==False:breakkye_file=open(kye_path,'rb')kye=kye_file.read()kye_file.close()continueelse:sp_type=1kye_path='.'+context[i].split(',')[1][5:-1]if os.path.exists(kye_path)==False:breakkye_file=open(kye_path,'r')kye=kye_file.read()kye_file.close()continueif 'ENDLIST' in context[i]:if sp_type==0:merge_type_0(d,checklist)shutil.rmtree(os.path.dirname('.'+context[i-1].strip()))elif sp_type==1:merge_type_1(d,kye,checklist)shutil.rmtree(os.path.dirname(kye_path))else:merge_type_2(d,kye,iv,checklist)shutil.rmtree(os.path.dirname(kye_path))print(directory3+'合并完成')breakos.remove(directory3)print('程序处理完毕!')
千万要注意缓存碎片文件夹的路径,本代码的py文件应该放在缓存碎片文件夹的路径的根目录下。
例:本程序zh1.py的绝对路径为C:\Users\Administrator\Desktop\wj\zh1.py
存放m3u8目录文件夹为自选,无影响,本例为C:\Users\Administrator\Desktop\wj\solist
缓存碎片文件夹应当模拟UC浏览器的目录,以本程序为根目录开始创建,本例为C:\Users\Administrator\Desktop\wj\storage\emulated\0\UCDownloads\VideoData
所有的碎片文件夹均存放于此。
UC手机浏览器本地m3u8流媒体缓存碎片批量合并为视频相关推荐
- UC,手机浏览器可以支持Apple watch,还是第一家!
系列文章目录 第三章:UC,手机浏览器可以支持Apple watch,还是第一家! 文章目录 系列文章目录 前言 安卓版 苹果版 第一家支持Apple Watch的手机浏览器 电脑版 天猫淘宝唯一推荐 ...
- IndexedDB浏览器本地存储、缓存、数据库、介绍
目录 1.前言 2.IndexedDB简介 3.IndexedDB使用场景 4.IndexedDB特点 4.1.非关系型数据库 NoSql 4.2.持久化存储 4.3.异步操作 4.4.支持事务 4. ...
- uc手机浏览器 手机模拟_网页为何总报浏览器漏洞?起底某些手机浏览器恶意推广行为...
首先给互联网大厂说声抱歉,得罪时间又到了,这次到了参与纵容流氓推广的某手机浏览器.这篇文章照例归类到我的造作实验室专栏系列.PS:这篇文章为了等待投诉结果,特意晚了几个月才发. 事情起因 这事情还需要 ...
- 上传身份证--uc手机浏览器拍照覆盖问题
公司项目中,要求实现上传身份证正反面照片功能.兼容pc端与手机端.pc端直接选择文件上传,在谷歌,火狐,safari等均没问题. 手机端可调用手机相机或选择图库,选择图库,各浏览器均没问题,手机拍照呢 ...
- 2022年浏览器行业前景:手机浏览器产品趋于智能化
我们遇到不懂的问题,第一反应可能就是用浏览器搜索一下答案,就可以找到自己想了解的东西.我国的手机浏览器已经逐渐走向成熟,浏览器产品趋于智能化,各大手机浏览器竞争激烈.国产手机浏览器企业如果想要在市场上 ...
- 中国手机浏览器行业发展模式与投资策略分析报告2022-2028年版
中国手机浏览器行业发展模式与投资策略分析报告2022-2028年版 [报告目录]: 第一章 手机浏览器相关概述 1.1 浏览器及手机浏览器简介 1.1.1 网页浏览器简述 1.1.2 手机上 ...
- vivo计算机背景,怎么修改VIVO手机浏览器中的主题与背景颜色
怎么修改VIVO手机浏览器中的主题与背景颜色 腾讯视频/爱奇艺/优酷/外卖 充值4折起 随着科技的发展,手机已经成为人们日常生活中必不可少的工具,当我们在使用vivo手机内的浏览器浏览网页时,如果想要 ...
- 中国手机浏览器行业运行态势与前景趋势预测报告(2022-2028年版)
中国手机浏览器行业运行态势与前景趋势预测报告(2022-2028年版) [报告编号]: BG425078 [出版时间]: 2022年5月 [出版机构]: 中智正业研究院 免费售后服务一年,具体订购流 ...
- 手机浏览器哪个最好用?
你是不是也像我一样,每次打开手机浏览器时都在为使用哪一个而烦恼呢? 都2023年了,还在为手机浏览器哪个最好用而苦恼!!! 那么别担心,今天我就来帮你解决这个难题! 在这篇文章中,我将为你评比各个主流 ...
- (转)web app 禁用手机浏览器缓存方法
开发过web app的同学,特别是前端人员,都碰到这烦人的事情,JS或CSS代码改变,可手机浏览器怎么刷新都不更新,手机浏览器的缓存特别恶劣. 所以今天贴个方法解决这问题.记得,本地调试的时候贴上,上 ...
最新文章
- android 自定义view文字不齐,Android 解决TextView排版参差不齐的问题
- matlab中的containers.Map()
- 子类super调用父类函数,该函数中调用的函数是父类还子类呢
- 关于 SAP Spartacus 和 SmartEdit 集成的问题
- 光纤收发器产品的光电介质转换芯片选择性能指标介绍
- C3P0连接池工具类使用
- 如何实现Android平台GB28181前端设备接入
- EXCEL图表之瀑布图
- Putty 保存账号密码
- 污水流量计常见的三种电磁损耗的简单介绍
- java设计模式--01类图UML图箭头含义
- Solana首个IDO平台Solstarter前景如何?
- 研发质量管理6大根基
- 计算机高校教师面试试讲和答辩,高校教师试讲答辩面试考试流程
- 联想电脑阻止c语言运行,联想电脑运行程序打不开怎么解决
- 高仿QQ源码 界面(3)
- 手把手教你抄写URP——3——自发光材质
- SpringBoot实现幕课网在线学习系统
- SAP:在互联网时代帮助企业夺回数据
- YOLOv2---优图代码+实现细节
热门文章
- uni-app 的 tabBar 图标自制方法
- windows update 无法启动 报错87:参数错误的解决方法
- 打开html自动播放音乐,如何使背景音乐在打开网页时就自动播放
- 计算机蓝屏代码0x0000007b,win7系统开机蓝屏提示STOP:0X0000007B错误代码怎么办
- Win10开电脑热点以后手机连接会IP配置失败或者一直显示获取IP中
- arm板发热和功耗探讨
- Serialize Your Deck with Positron [XML Serialization, XSD, C#]
- JUJU 猫论坛系统克隆准备工具 V1.0.0.0 Beta 测试版(菜鸟也能轻松制作万能克隆光盘)...
- 靶机渗透练习21-Noob
- HTML,CSS中的复合写法总结