046 将文件夹中视频按照横屏竖屏进行分类
代码如下:关键位置自行修改
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | import os import os.path from tqdm import tqdm import shutil import cv2 #视频处理的包opencv #函数查找指定路径中所有文件的路径 #函数查找指定路径中所有文件的路径 def get_file(path): list1=[]#用于存储递归查找到的所有文件,传递给函数 fileList = os.listdir(path) # 获取path目录下所有文件 for filename in fileList: pathTmp = os.path.join(path,filename) # 获取path与filename组合后的路径 if os.path.isdir(pathTmp): # 如果是目录 a=get_file(pathTmp) # 则递归查找(注意一定要有接受变量,不然就出错了) for i in a: list1.append(i) else: list1.append(pathTmp) return list1 path = input('请输入路径:').strip() #.strip()去除首尾的空格 file_path_list=get_file(path) #筛选后缀函数,传入包含所有后缀名的列表,以及需要筛选的后缀(默认筛选txt文件) def shai_xuan_hou_zhui(file_path_list,hou_zhui='.txt'): list2=[] #用于储存筛选好的文件的路径 for filepath in file_path_list: # os.path.splitext():分离文件名与扩展名 if os.path.splitext(filepath)[1] == hou_zhui: list2.append(filepath) # print(filepath +'\n') return list2 # hou_zhui='.jpg' # py_list=shai_xuan_hou_zhui(file_path_list,'.py') #筛选py文件 pig_list=shai_xuan_hou_zhui(file_path_list,'.flv') #筛选flv格式文件 folder1= "F:\\火萤视频\\横" #存放横视频的地址 folder2= "F:\\火萤视频\\竖" #存放的地址,这里的横竖一定不要写错了 for i in tqdm(range(len(pig_list))): lujing=pig_list[i] cap=cv2.VideoCapture(lujing) width=cap.get(3) #获取帧宽 height=cap.get(4) #获取帧高 cap.release() #用来释放资源不然就没法进行移动了 # print(width) # print(height) # cap.close() if width > height: shutil.move(lujing,folder1) #进行移动的操作 else: shutil.move(lujing,folder2) |