common.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # -*- coding: utf-8 -*-
  2. # @Time: 2023/12/26
  3. """
  4. 公共方法,包含:生成log / 删除log / 下载方法 / 删除 weixinzhishu_chlsfiles / 过滤词库 / 保存视频信息至本地 txt / 翻译 / ffmpeg
  5. """
  6. import os
  7. import sys
  8. sys.path.append(os.getcwd())
  9. from datetime import date, timedelta
  10. from datetime import datetime
  11. from loguru import logger
  12. proxies = {"http": None, "https": None}
  13. class Common:
  14. # 统一获取当前时间 <class 'datetime.datetime'> 2022-04-14 20:13:51.244472
  15. now = datetime.now()
  16. # 昨天 <class 'str'> 2022-04-13
  17. yesterday = (date.today() + timedelta(days=-1)).strftime("%Y-%m-%d")
  18. # 今天 <class 'datetime.date'> 2022-04-14
  19. today = date.today()
  20. # 明天 <class 'str'> 2022-04-15
  21. tomorrow = (date.today() + timedelta(days=1)).strftime("%Y-%m-%d")
  22. # 使用 logger 模块生成日志
  23. @staticmethod
  24. def logger(log_type):
  25. """
  26. 使用 logger 模块生成日志
  27. """
  28. # 日志路径
  29. log_dir = f"./{log_type}/logs/"
  30. log_path = os.getcwd() + os.sep + log_dir
  31. if not os.path.isdir(log_path):
  32. os.makedirs(log_path)
  33. # 日志文件名
  34. log_name = f"{log_type}-{datetime.now().date().strftime('%Y-%m-%d')}.log"
  35. # 日志不打印到控制台
  36. logger.remove(handler_id=None)
  37. # 初始化日志
  38. logger.add(os.path.join(log_dir, log_name), level="INFO", rotation="00:00", retention="10 days", enqueue=True)
  39. return logger