Open boardfish opened 5 years ago
Yeah, currently the importer for Facebook is just through their API. Contributions are welcome to support importing from the zip file they export though!
I don't expect to be able to do this for a long time as I don't yet know Go, but I'll be equally glad if someone beats me to the punch.
@boardfish FYI, I've added a new issue template for requesting data sources which will make it easier for whoever implements it. If you could update your original post to use this template, that would be great, thanks!
(It's only halfway a new data source, but enough of the issue template is relevant for adding a data importer for Facebook that I'm going to request it be filled out anyway.)
Done, but it's light on detail for now. If I catch a moment in the near future, I'll look more closely at my own data export to see if I can shed more light on it.
1. What is the data source you want to add?
Facebook data exports. Currently there's a date source for data from the API, but a Timeliner user might have already closed their account, leaving behind only their data.
2. How are items obtained from the data source?
Data must be manually imported. It may be sourced from some or all of Facebook's different offerings. Documentation is here.
2a. If authentication is required, how does a user create or obtain credentials for Timeliner to access the data?
N/A
2b. If an API is available, what are its rate limits?
N/A
2c. If a file is imported, how is the file obtained?
Documentation here.
2d. If a file is imported, how do we read the file?
Exports are a ZIP file containing a structure of folders, JSON files, and various media files. The media files have their EXIF data, but additional metadata from Facebook corresponding to each one is in the associated JSON file.
3. What constitutes an "item" from this data source?
It depends how much of the export is considered useful, but photos, posts, milestones etc. should all be considered.
4. How can items from this data source be related?
This should be looked into more closely by someone who actually uses Facebook – my memory for it isn't great as I type this.
5. What constitutes a "collection" from this data source?
Facebook has the concept of photo albums, so they'd constitute a collection. Other than that, I doubt there are many others.
6. What might not be trivial, obvious, or straightforward when implementing this data source?
I'm not sure how easy it would be to make the relationship between data from the JSON files and actual media files themselves clearer.
Bonus: How do you like Timeliner? How much data are you preserving with it? Which existing data sources do you use?
I haven't started using it yet, but I figure a Facebook data export would serve as the foundation for my starting to use this on my VPS.