Google analytics and django datetime



我正在尝试将Google Analytics(分析)和DJANGO应用程序的数据添加在一起。

数据库中Django的数据库中的数据库中位于UTC中。Google Analytics(分析)数据具有IST时区。

我正在根据IST的一段时间从Google Analytics(分析)获取数据,并在IST的同一时期从Django获取数据。有很多变化。

  • 有什么方法可以解决?

ist(印度标准时间)比UTC(http://www.timeanddate.com/time/zones/ist/ist)前5:30。从Django获取数据时,请确保您使用局部DateTime对象:

import pytz
from datetime import datetime    
tz_india = pytz.timezone('Asia/Kolkata')
start = tz_india.localize(datetime(#Here create you datetime object from IST))
end = tz_india.localize(datetime(#Here create you datetime object from IST))

您的最佳选择可能是将默认时区从您的django应用更改为ist。

首先,您应该检查django设置:time_zone

如果您了解它的工作原理,您将更好地理解如何修复它。

要将默认时区更改为IST,您需要在 settings.py 中添加:

TIME_ZONE =  'Asia/Kolkata'

如果Asia/Kolkata不符合您的需求,则可以检查下一个URL中的所有可用时区:

时区列表

如果您喜欢管理DateTime对象并将UTC转换为IST或Viceversa,则可以这样做:

将数据从UTC转换为IST

from datetime import datetime
from pytz import timezone
format = "%Y-%m-%d %H:%M:%S %Z%z"
# Current time in UTC
now_utc = datetime.now(timezone('UTC'))
print now_utc.strftime(format)
Output: 2015-05-18 10:02:47 UTC+0000
# Convert to Asia/Kolkata time zone
now_asia = now_utc.astimezone(timezone('Asia/Kolkata'))
print now_asia.strftime(format)
Output: 2015-05-18 15:32:47 IST+0530

将数据从IST转换为UTC

from datetime import datetime
from pytz import timezone
format = "%Y-%m-%d %H:%M:%S %Z%z"
# Current time in Asia/Kolkata
now_asia = datetime.now(timezone('Asia/Kolkata'))
print now_asia.strftime(format)
Output: 2015-05-18 15:32:47 IST+0530
# Convert to UTC time zone
now_utc = now_utc.astimezone(timezone('UTC'))
print now_utc.strftime(format)
Output: 2015-05-18 10:02:47 UTC+0000

最新更新