|
|
发表于 2019-10-29 17:14:12
|
显示全部楼层
本帖最后由 jackz007 于 2019-10-29 17:19 编辑
os . path . listdir(start_dir) 是风险语句,当 start_dir 是无权限访问路径时,执行这一句就会出错,导致脚本无法继续执行,所以,应该把这一句放进 try ... except 语句块,以便可以在出现错误的时候,可以跳过这个目录。
楼主试试这个代码:
- #-*- coding:gbk -*-
- import os
- def search_file(start_dir):
- try:
- for each_file in os . listdir(start_dir):
- x = os . path . join(start_dir , each_file)
- if os . path . isfile(x):
- file_ext = os . path . splitext(each_file)[1] . lower()
- if file_ext in ['.mp4' , '.rmvb' , '.avi']:
- video_list . append(x + '\n')
- elif os . path . isdir(x):
- search_file(x)
- except Exception as err:
- print(err)
- video_list = []
- start_dir=input('请输入待查找的初始目录:')
- search_file(start_dir)
- if len(video_list) :
- f = open('video_list.txt' , 'w')
- f . writelines(video_list)
- f . close()
- else:
- print('抱歉:没有找到任何目标文件!')
复制代码 |
|