因此我使用Instagram API,我需要花時間上傳圖片。通常一切都好和時間戳看起來是這樣的:Python時間戳(13位數字)返回2074年,以及如何將15位數時間戳轉換爲字符串
>>> import time
>>> timestamp = 1497423819748
>>> time.strftime("%d %b %Y %H:%M:%S GMT", time.gmtime(timestamp/1000.0)).split(' ')
['14', 'Jun', '2017', '07:03:39', 'GMT']
或本:
>>> timestamp = 1497425126
>>> time.strftime('%d %b %Y %H:%M:%S GMT', time.gmtime(timestamp)).split(' ')
['14', 'Jun', '2017', '07:25:26', 'GMT']
但一些媒體有時間戳,看起來像這樣:
>>> timestamp = 3302720163189
>>> time.strftime("%d %b %Y %H:%M:%S GMT", time.gmtime(timestamp/1000.0)).split(' ')
['28', 'Aug', '2074', '22:16:03', 'GMT']
,甚至這15個數字時間戳:
>>> timestamp = 186693871989665
>>> time.strftime("%d %b %Y %H:%M:%S GMT", time.gmtime(timestamp/100000.0)).split(' ')
['28', 'Feb', '2029', '02:05:19', 'GMT']
請你能幫我正確地將這些類型的時間戳轉換爲字符串,或者這些時間戳有錯誤嗎?
更新:
>>> InstagramAPI.searchLocation('High Castle')
>>> location_id = InstagramAPI.LastJson['items'][0]['location']['pk']
>>> InstagramAPI.getLocationFeed(location_id)
>>> print(InstagramAPI.LastJson['items'][9]['device_timestamp'], InstagramAPI.LastJson['items'][9]['taken_at'])
77276011342 1497443715
情況下或者在與15位打印此:
因此它似乎有時只是一些錯誤 'device_timestamp'該InstagramAPI給我,我不知道,但看起來像它返回時間與用戶的設備拍攝的照片和他們的手機上的時間是不正確的)但'taken_at'似乎返回正確的時間戳,所以我現在將使用它,但thx尋求幫助。如果你有不同的答案,我希望看到它。
這兩個時間戳後者看上去有點像錯誤對我來說,他們應該被忽略。 –
您確定這些是您從API獲得的確切值嗎?看起來好像你可能會讓你的一端發生整數溢出...... – CBroe
我看到15位數的時間戳也會從api中回來,而且頻繁出現。我認爲這可能是一個SMS/GMS編碼的時間戳,但我還不確定 – Felipe