Преобразуйте метку времени mysql во время эпохи в Python

Я бы добавил к принятому ответу, что вы также захотите добавить заголовок Accept в httpClient:

httpClient.DefaultRequestHeaders.Accept.Clear();
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
7
задан 22 September 2008 в 16:22
поделиться

4 ответа

Почему бы не позволять MySQL сделать тяжелую работу?

select unix_timestamp(fieldname) from tablename;
27
ответ дан 6 December 2019 в 05:01
поделиться

Если Вы не хотите иметь MySQL, делают работу по некоторым причинам, то можно сделать это в Python достаточно легко. При возвращении столбца даты и времени из MySQLdb Вы получаете Python datetime.datetime объект. Для преобразования одного из них можно использовать time.mktime. Например:

import time
# Connecting to database skipped (also closing connection later)
c.execute("SELECT my_datetime_field FROM my_table")
d = c.fetchone()[0]
print time.mktime(d.timetuple())
4
ответ дан 6 December 2019 в 05:01
поделиться

Я использую что-то как следующее для получения секунд с эпохи (UTC) с даты MySQL (местное время):

calendar.timegm(
   time.gmtime(
      time.mktime(
         time.strptime(t, 
                       "%Y-%m-%d %H:%M:%S"))))

Больше информации в этом вопросе: Как я преобразовываю местное время в UTC в Python?

1
ответ дан 6 December 2019 в 05:01
поделиться

преобразование времени mysql в эпоху:

>>> import time
>>> import calendar
>>> mysql_time = "2010-01-02 03:04:05"
>>> mysql_time_struct = time.strptime(mysql_time, '%Y-%m-%d %H:%M:%S')
>>> print mysql_time_struct
(2010, 1, 2, 3, 4, 5, 5, 2, -1)
>>> mysql_time_epoch = calendar.timegm(mysql_time_struct)
>>> print mysql_time_epoch
1262401445

преобразование эпохи в то, что MySQL может использовать:

>>> import time
>>> time_epoch = time.time()
>>> print time_epoch
1268121070.7
>>> time_struct = time.gmtime(time_epoch)
>>> print time_struct
(2010, 3, 9, 7, 51, 10, 1, 68, 0)
>>> time_formatted = time.strftime('%Y-%m-%d %H:%M:%S', time_struct)
>>> print time_formatted
2010-03-09 07:51:10
9
ответ дан 6 December 2019 в 05:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: