12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- import datetime
- import hashlib
- import json
- import time
- def sha1(text: str):
- """
- 十六进制数字字符串形式摘要值
- @param text: 字符串文本
- @return: 摘要值
- """
- _sha1 = hashlib.sha1()
- _sha1.update(text.encode("utf-8"))
- return _sha1.hexdigest()
- def get_ms() -> int:
- return int(round(time.time() * 1000))
- def get_current_date():
- return datetime.datetime.now().strftime("%Y-%m-%d")
- def ms2date(ms: int, fmt="%Y-%m-%d %H:%M:%S"):
- """毫秒转日期"""
- timestamp = float(ms / 1000)
- time_array = time.localtime(timestamp)
- return time.strftime(fmt, time_array)
- def convert2type(ts_str):
- """字符串类型时间戳转成整型"""
- return int(float(ts_str) / 1000)
- def ts2date(ts_str, fmt="%Y-%m-%d %H:%M:%S") -> str:
- """
- 时间戳转成日期
- :param ts_str: 毫秒级时间戳
- :param fmt: 日期格式
- :return: 日期
- """
- timestamp = int(float(ts_str) / 1000)
- time_array = time.localtime(timestamp)
- return time.strftime(fmt, time_array)
- def date2ts(date_str: str, fmt="%Y-%m-%d"):
- """日期转成时间戳"""
- time_array = time.strptime(date_str, fmt)
- timestamp = int(time.mktime(time_array))
- return timestamp
- def delay_by(delay=0, method='seconds', fmt="%Y-%m-%d %H:%M:%S"):
- """按指定方式获得顺延时间"""
- _current_now = datetime.datetime.now()
- if method == 'days':
- _timedelta = datetime.timedelta(days=delay)
- elif method == 'hours':
- _timedelta = datetime.timedelta(hours=delay)
- elif method == 'minutes':
- _timedelta = datetime.timedelta(minutes=delay)
- elif method == 'microseconds':
- _timedelta = datetime.timedelta(microseconds=delay)
- else:
- _timedelta = datetime.timedelta(seconds=delay)
- return (_current_now + _timedelta).strftime(fmt)
- def detect_encoding(b):
- return json.detect_encoding(b)
|