I received the servertime from the Binance-API,I try to work with and it looks like this:
{
"serverTime": 1518440400000
}
The question is, how can I compute the date out of this stamp?
I tried
import datetime
print(datetime.datetime.fromtimestamp(
int("1518308894652")).strftime('%Y-%m-%d %H:%M:%S'))
But the date wasn´t valid.
Do you have ideas, or is it to specific? Thank you!
You could use this:
from datetime import datetime
datetime.fromtimestamp(int("1518308894652"))
But python says the year is out of range (understandably, considering it says it's 50087). So I suspect that serverTime is not a normal timestamp.
But assuming the response that you got was the timestamp, so you don't need to do any other conversions other than turning the string into an int.
Turns out the docs say "All time and timestamp related fields are in milliseconds." So just divide the response by 1000 and you'll be fine: datetime.fromtimestamp(int("1518308894652")/1000). Source
Your response is in milliseconds when datetime.fromtimestamp requires seconds.
import datetime
print(datetime.datetime.fromtimestamp(1518308894652/1000))
# 2018-02-10 19:28:14.652000
Pandas can handle this perfectly by specifying miliseconds as the unit.
import pandas as pd
pd.to_datetime(1518440400000, unit='ms')