微博几分钟前此类时间转化

import datetime
import arrow

def getTime(flag, dayhourminute):
   '''
   获取几小时之前,几分钟前,几天前,几个月前,及几年前的具体时间 flag, 1:天;2:小时;3:分钟;4:月,5:年
   :param flag: 1:天;2:小时;3:分钟;4:月,5:年
   :param dayhourminute: 整数值
   :return: 具体时间 %Y-%m-%d %H:%M:%S
   '''
   tn = datetime.datetime.now()
   t = None
   ttime = ''
   if flag <= 3:
       if flag == 1:
           t = datetime.timedelta(days=dayhourminute)
       elif flag == 2:
           t = datetime.timedelta(hours=dayhourminute)
       elif flag == 3:
           t = datetime.timedelta(minutes=dayhourminute)
       strtime = tn - t
       ttime = strtime.strftime('%Y-%m-%d %H:%M:%S')
   else:
       dt = arrow.now()
       if flag == 4:
           ttime = dt.shift(months=-dayhourminute).format("YYYY-MM-DD HH:MM:SS")
       elif flag == 5:
           ttime = str(
               int(datetime.datetime.now().strftime("%Y")) - dayhourminute) + "-" + datetime.datetime.now().strftime(
               "%m-%d")
   return ttime


```python
posted @ 2021-02-03 17:51  sihte  阅读(89)  评论(0编辑  收藏  举报