记:python 遍历文件夹及其子文件夹
需求:
- 遍历文件夹及子文件夹下面所有文件
- 创建时间作为筛选条件
- .返回url 可以直接访问文件
- 返回数据json格式
demo:
def get_files(request):
if request.method == 'POST':
begin_time = request.POST.get('begin_time')
end_time = request.POST.get('end_time')
file_path = settings.MEDIA_ROOT
str_http = 'http://127.0.0.1:8000/media/'
list_dir = []
for dir_path, dir_names, file_names in os.walk(file_path):
for file in file_names:
file_create_time = time.strftime('%Y-%m-%d %H:%M:%S',
time.localtime(os.stat(os.path.join(dir_path, file)).st_ctime))
file_info = {
'name': file,
'path': (dir_path + '\\' + file).replace('\\', '/').replace(
'F:/workspace/demo/djangoProject/myWeb/media/',
str_http),
'time': file_create_time
}
if begin_time < file_create_time < end_time:
list_dir.append(file_info)
return JsonResponse(list_dir, safe=False)
效果:
注:
setting 文件
ALLOWED_HOSTS = ['127.0.0.1']
MEDIA_URL = 'media/'
MEDIA_ROOT = BASE_DIR / 'media'