Как узнать время с момента публикации поста на praw

Я пишу бот используя praw и я хочу знать, как прошло время с момента публикации поста. Наивным решением является использование datetime

import datetime
import praw

... """read a list of submission"""

date = datetime.datetime.fromtimestamp(submission.created)
dif = datetime.datetime.now() - date

Но я получаю отрицательные отметки времени. Я думаю, мне нужно учитывать часовой пояс Reddit, как мне это сделать?

1 ответ

Есть специальная функция, которая будет возвращать время эпохи.

import datetime
import praw

... #stuff

date = datetime.datetime.fromtimestamp(submission.created_utc)
dif = datetime.datetime.utcnow() - date

utcnow () возвращает ваше текущее время так, как оно отображается в Universal Time. То же самое с отправкой.created_utc

Для дальнейшего использования вы можете динамически проверить, какие функции / переменные доступны в каждом объекте praw (это намного надежнее документации).

from pprint import pprint
object = ... #any praw object like praw.Reddit praw.Submission praw.Comment etc
pprint(dir(object))
pprint(vars(object))
Другие вопросы по тегам