优化日期处理

This commit is contained in:
2024-06-06 09:15:44 +08:00
parent 5498d62542
commit adbf93eca1

View File

@@ -29,17 +29,10 @@ def handle_date(string):
string = string[:8] string = string[:8]
elif length > 10 and "-" in string: elif length > 10 and "-" in string:
string = string[:10] string = string[:10]
if is_valid_date_format(string):
return string if len(string) < 6:
else:
return "" return ""
# 判断是否是合法的日期格式
def is_valid_date_format(date_str):
if len(date_str) < 6:
return False
# 定义可能的日期格式 # 定义可能的日期格式
formats = [ formats = [
# yyyy-MM-dd # yyyy-MM-dd
@@ -55,12 +48,15 @@ def is_valid_date_format(date_str):
# 遍历所有格式,尝试解析日期 # 遍历所有格式,尝试解析日期
for fmt in formats: for fmt in formats:
try: try:
datetime.strptime(date_str, fmt) date = datetime.strptime(string, fmt)
return True # 限定日期的年份范围
if 2000 < date.year < 2100:
return date.strftime("%Y-%m-%d")
continue
except ValueError: except ValueError:
pass continue
return False return ""
def handle_department(string): def handle_department(string):