# -*- coding:utf-8 -*-
# Modify: 刘小懒
import os
from datetime import datetime, timedelta
def get_check_dir(dir_path):
"""
获取当前要检测的目录列表
:param dir_path: 指定检测目录
:return: 检测的目录下的文件和文件夹列表
"""
return os.listdir(dir_path)
def get_dir_time(abs_path, dir_name):
"""
检测是不是目录,是目录返回目录创建时间戳
:param abs_path: 检测目录名的绝对路径
:param dir_name: 要获取的文件名
:return:
"""
dir_abs_name = os.path.join(abs_path, dir_name)
if os.path.isdir(dir_abs_name):
return os.path.getmtime(dir_abs_name)
return 0
def get_current_time():
"""
获取当前时间
:return: 时间对象:年月日
"""
today = datetime.now().date()
yesterday = today + timedelta(days=-1)
return yesterday
def get_zero_time(date):
"""
获取要比较的日期的零时时间戳
:param date: 要对比的时间日期
:return: 要对比的当日凌晨的时间戳
"""
zero_time = datetime.now().replace(year=date.year, month=date.month, day=date.day,hour=0, minute=0, second=0)
return datetime.timestamp(zero_time)
def check_dir_time(check_path):
"""
判断当前文件是不是今天内创建的
:param check_path: 检测的路径
:return:
"""
list_dir = get_check_dir(check_path)
current_time = get_current_time()
zero_time = get_zero_time(current_time)
dir_list = []
for dir_name in list_dir:
dir_mk_time = get_dir_time(check_path, dir_name)
if dir_mk_time >= zero_time:
# print("%s 是昨天%s 创建的" % (dir_name, current_time))
dir_list.append(dir_name)
return dir_list
def tar_zip(source):
dir_name = check_dir_time(source)
print(dir_name)
return dir_name
if __name__ == "__main__":
source_dir = "D:/"
check_dir = os.path.dirname(os.path.abspath(source_dir))
tar_zip(check_dir)