We're calling on all EU-based Mozillians with iOS or iPadOS devices to help us monitor Apple’s new browser choice screens. Join the effort to hold Big Tech to account!

Zoeken in Support

Vermijd ondersteuningsscams. We zullen u nooit vragen een telefoonnummer te bellen, er een sms naar te sturen of persoonlijke gegevens te delen. Meld verdachte activiteit met de optie ‘Misbruik melden’.

Meer info

Deze conversatie is gearchiveerd. Stel een nieuwe vraag als u hulp nodig hebt.

When reading JSON formated backup my bookmarks, In what format are the lastModifed and dateAdded proporties?

  • 6 antwoorden
  • 1 heeft dit probleem
  • 9 weergaven
  • Laatste antwoord van cor-el

more options

I would like to analyze my bookmarks using python. I can't figure out the format of the lastModifed and dateAdded fields. There are too many digits for a unix time stamp. When I truncate the number to the first 10 digits and use pythons datetime.fromtimestamp I get dates that don't make any sense. Any help would be greatly appreciated.

I would like to analyze my bookmarks using python. I can't figure out the format of the lastModifed and dateAdded fields. There are too many digits for a unix time stamp. When I truncate the number to the first 10 digits and use pythons datetime.fromtimestamp I get dates that don't make any sense. Any help would be greatly appreciated.

Gekozen oplossing

this is what I'm doing that seems to work. from JSON bookmark file: "dateAdded": 1285530321809000,

python 3 code I'm using after truncating the last 6 digits: datetime.datetime.fromtimestamp(1285530321).strftime('%Y-%m-%d %H:%M:%S')

Result: >>> '2010-09-26 15:45:21'

Dit antwoord in context lezen 👍 0

Alle antwoorden (6)

more options

Those date stamps are in microseconds, so you would have to remove the last three digits or divide the number by 1000 if your software expects milliseconds or six digits for seconds.

The date and time is saved in 64 bit EPOCH format in micro seconds.

Bewerkt door cor-el op

more options

I'm not certain where the discrepancy is but all the numbers in the fields are 16 digit numbers. Dividing by 1000 or dropping the last 3 digits still leaves an integer which is too large. Before I ask the question I tried converting the timestamps using what I thought was the first 10 digits but it turned out I used 11 and it was giving me dates far in the future. So, if I use the first 10 digits it gives me dates that make sense. It seems to me that the last 3 digits (all zeros) must be padding to fill 64 bits. Anyway the problem seems to be solved. Thank you for the help and the info.

more options

Does this converter work on those dates: http://www.esqsoft.com/javascript_examples/date-to-epoch.htm (Option 2)

more options

You didn't answer that time format your software is using.

JavaScript uses millisecond resolution.

If dividing by 1E3 still gives a date in the future for you then it is likely that seconds are used in your case and you would have to divide by 1E6 instead of 1E3

more options

Gekozen oplossing

this is what I'm doing that seems to work. from JSON bookmark file: "dateAdded": 1285530321809000,

python 3 code I'm using after truncating the last 6 digits: datetime.datetime.fromtimestamp(1285530321).strftime('%Y-%m-%d %H:%M:%S')

Result: >>> '2010-09-26 15:45:21'

more options

Yes, that is the date-time in Unix Epoch format in seconds.