初学python,
问题:从哔哩哔哩下载的视频,每个章节都被分开在不同的文件夹内,包含info文件,内容为json格式的视频描述信息
json信息:{“PartName”:“02 第二章”}
mp4文件名都是数字,100+的视频资源 播放时 浏览查找很不方便
思路: 使用python 循环文件夹目录,读取info文件的json内容转为对象,复制视频文件到父级目录。
main.py:
# coding=utf-8
import json
import os
import shutil
def main():
# 文件目录
file_dir = "G:/video/"
# 数量
count = 0
#文件名称
part_name = "";
for root, dirs, files in os.walk(file_dir):
# print("待处理的文件数为:" + str(len(files)))
print("路径为:"+root)
print("包含文件:" + str(files))
for file in files:
# 按照文件顺序,会先获取到info文件
if file.__contains__(".info"):
# 读取info文件
print("路径为:" + root + '/' + file)
with open(root + '/' + file, 'r') as f:
# 读取文件内容,转为对象
video_json_info = json.loads(f.read())
# 获取对象中的 视频章节名称
part_name = video_json_info['PartName']
if file.__contains__(".mp4"):
ori_dir = os.path.join(root + '/', file)
now_dir = os.path.join(root + '/', part_name + '.mp4')
# 复制文件
shutil.copyfile(root + '/' + file, file_dir + part_name + '.mp4')
# 输出log
print "copy %s -> %s" % (ori_dir, now_dir)
count += 1
print("操作完成,共" + str(count) + "个视频文件")
if __name__ == '__main__':
main()
日志: