将bilibili缓存的视频缓存批量转换成mp4格式的python代码

整理b站缓存到mp4格式,推荐使用虚拟机或者安卓手机下载缓存。缓存

转换后,播放更自由一些,但愿对你们有帮助测试

默认缓存位置: Android - data - ta.danmaku.bili - downloadspa

使用方法:脚本放到和缓存同目录,执行后输入文件名称,便可瞬间转换。code

仅测试过mac,win下应该是通用的,没有测试。blog

转换前——转换后:get

 

import os, shutil #导入必须的更举报
work_dir = os.getcwd() #获取工做目录


def main(): old_dir = input("输入要处理的目录名称") #提示输入文件名 相似 :34387218
    new_dir = old_dir+"_MP4" # 输入存放的文件名
    if(os.path.exists(new_dir)): # 判断是否存在,若存在删除后重建
        print(new_dir+"已经存在,已经重制") shutil.rmtree(new_dir) os.mkdir(new_dir) else: print(new_dir+"建立成功") os.mkdir(new_dir) for i in os.listdir(os.path.join(work_dir, old_dir)): # 循环处理
        if(i == ".DS_Store"): #跳过苹果默认建立的文件
            continue
        for o in os.listdir(os.path.join(work_dir, old_dir, i)): # 开始循环内部
            if(o == ".DS_Store"): #跳过苹果默认建立的文件
                continue
            if(os.path.isdir(os.path.join(work_dir, old_dir, i, o))): # 进入二级循环
                for p in os.listdir(os.path.join(work_dir, old_dir, i, o)): # 开始操做循环
                    if(o == ".DS_Store"): #跳过苹果默认建立的文件
                        continue file_name = os.path.basename(p)  #获取文件名称
                    if file_name.endswith(".blv"):  # 判断名称格式是否正确
                        f_file_name =file_name.split('.') # 拆分文件名
                        index = int(f_file_name[0])+1 old_file = os.path.join(work_dir, old_dir, i, o, p) # 获取旧文件
                        shutil.move(old_file,new_dir) # 移动文件
                        new_file = str(i)+"_"+str(index)+".mp4" # 定制新的文件名
                        os.rename(os.path.join(work_dir, new_dir,file_name), os.path.join(work_dir, new_dir, new_file)) # 执行重命名
                    
                        
if __name__ == "__main__": main()
相关文章
相关标签/搜索