檢測是不是昨天創建的目錄
# -*- 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)