2012-04-18 6 views
2

분석을 위해 크롬 '기록'파일의 sqlite3을 연결하는 데 사용합니다. 그러나 timestamp 인 last_visit_time에 대한 데이터가 있지만 실시간으로 변경하는 방법을 알지 못합니다. 이 같은 테스트 : 나는 거의 동시에 utcTime를 인쇄와 웹 사이트를 클릭Long Int 타임 스탬프를 날짜/시간으로 변환하십시오.

2012-04-18 23:22:11.084300 (utctime) 

2012-04-19 01:22:11.084300 (myPC time) 

12,979,264,931,952,304 (the time stamp in the data) 

. 그래서 위와 같은 통계를 얻습니다. 12,979,264,931,952,304는 long int이므로 변환 할 수있는 일반적인 방법은 불가능합니다.

어떻게 타임 스탬프를 날짜로 변환 할 수 있습니까?

답변

1

그것이 저장하는 타임 스탬프는 1601 년 1 월 1 일 자정 UTC 이후의 마이크로 초의 숫자입니다. 이것을 현재 시간으로 변환하려면 기온에 대한 마이크로 초의 숫자를 this answer과 같이 이 :

>>> import datetime 
>>> epoch_start = datetime.datetime(1601, 1, 1) 
>>> delta = datetime.timedelta(microseconds=12979264931952304) 
>>> epoch_start + delta 
datetime.datetime(2012, 4, 18, 23, 22, 11, 952304) 

당신이 (필자는 현재 UTC 오전 주 - UTC + 2는 것처럼 보이지만, 4) this method를 사용하여 해당 지역의 시간대로 변환하려면

>>> from dateutil import tz 
>>> from_zone = tz.tzutc() 
>>> to_zone = tz.tzlocal() 
>>> utc_time = (epoch_start + delta).replace(tzinfo=from_zone) 
>>> utc_time.astimezone(to_zone) 
datetime.datetime(2012, 4, 18, 19, 22, 11, 952304, tzinfo=tzlocal()) 
+0

예! 고맙습니다!!! – Alex

관련 문제