最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

脚本

运维笔记admin45浏览0评论

脚本

脚本

原因是自己下载的视频是使用win商店里面的bilibili UWP客户端。下载的视频都是这个000.flv,对应的视频信息都在对应文件夹的info.json里面。所以写一个脚本,把info.json里面的视频名称提取出来,然后重命名000.flv。
脚本很简单,但是之前想写一个多线程来实现这个脚本,但是实际上因为多线程执行是需要当前环境,而os.chdir()会改变pwd,导致多线程无法实现。可能是我能力有限,或许可以用协程?希望有大佬能指点一下。

import os, time, redef get_list(i):toppath = os.getcwd()dir = os.listdir(toppath)print("遍历第%d个文件夹"%(i+1))print(dir[i])print("进入第%d个文件夹内"%(i+1))os.chdir(dir[i])	print("当前文件夹name")print(os.getcwd())print("sucess")toppath = os.getcwd()dir = os.listdir(toppath)print("当前文件夹里面的东西:{}".format(dir))rename_f(i)print("修改名称后文件夹的东西:{}".format(os.listdir(toppath)))print("*"*15)print("回到父级目录")os.chdir(os.path.dirname(os.getcwd()))print(os.getcwd())def rename_f(i):if os.path.exists("000.flv"):with open("info.json",'r', encoding='UTF-8') as f:a = f.read()# print(a)matchObj = re.match(r'.*"title":"(.*)","path".*', a, re.M|re.I)a = matchObj.group(1)print("value:{}".format(a))a_list = a.split()print(a_list)name = a_list[1] +' '+ a_list[2]print(name)os.rename("000.flv", name+".flv")for i in range(len(os.listdir(os.getcwd()))-3):get_list(i)
发布评论

评论列表(0)

  1. 暂无评论