feat: 新增 get_time/get_file

This commit is contained in:
han0
2023-02-23 15:25:13 +08:00
parent d8334b26ec
commit 42430ea111

View File

@@ -1,5 +1,7 @@
import json
import zlib
from datetime import datetime
from time import mktime
from flask import request, g
@@ -70,3 +72,67 @@ def get_client_ip(request):
ips = x_forwarded_for.split(',')
return ips[0].strip()
return request.headers.get('X-Real-Ip', request.remote_addr)
def get_time(data, is_datetime=False):
if data:
if isinstance(data, int):
return data
if isinstance(data, datetime):
return int(mktime(data.timetuple()))
_data = None
if data.isdigit():
_data = int(data)
if is_datetime:
_data = datetime.fromtimestamp(_data)
else:
if data.count('-') == 2:
date_format = '%Y-%m-%d'
elif data.count('-') == 1:
date_format = '%Y-%m'
elif data.count('/') == 2:
date_format = '%Y/%m/%d'
else:
date_format = ''
if data.count(':') == 2:
time_format = '%H:%M:%S'
elif data.count(':') == 1:
time_format = '%H:%M'
else:
time_format = ''
if date_format or time_format:
if ' ' in data:
datetime_format = '{} {}'.format(date_format, time_format)
else:
datetime_format = '{}{}'.format(date_format, time_format)
_data = datetime.strptime(data, datetime_format)
if is_datetime is False:
_data = int(mktime(_data.timetuple()))
else:
if is_datetime:
return None
return 0
else:
if is_datetime:
return None
return 0
return _data
def get_file():
file_handler = None
for key in request.files:
f = request.files[key]
file_handler = f
break
if not file_handler:
return None
return file_handler