经常在油管上批量下载视频,但是下载下来的每一个视频都有一个父目录,每次下完都得把视频重新全部拉出来,为了偷懒,写了这个代码-比较简单,解脱双手。
import shutil
import os
"""
搜索指定文件夹下的所有mp4文件,把搜索到的视频文件全部移动到指定的位置
"""
path = r"E:\C++\Cpp"#搜索某个文件夹下的所有mp4文件
move_path = r"E:\C++\Linux Mp4" #把搜索出来的mp4移动到的位置
if os.path.isdir(move_path): #目的文件夹不存在就创建
pass
else:
os.mkdir(move_path)
def dfs(dir_name):#深度遍历
try:
for i in os.listdir(dir_name):#遍历子目录
full_path=os.path.join(dir_name,i)#路径合并
if(full_path.endswith('.mp4')):#文件名以mp4结尾
print(full_path)#mp4文件的具体路径
print(os.path.dirname(full_path))#视频文件的父目录
shutil.move(full_path,move_path)#把目标文件移到目的位置
if os.path.isdir(dir_name) :#如果是目录,进行递归遍历
dfs(dir_name+'/'+i) #递归遍历下一级子目录
except:
pass
if __name__ == '__main__':
dfs(path)