v0.1.1
fb reads Facebook without a cookie, and a new archive command.
This release changes how fb reaches Facebook and adds a command for mirroring a Page to disk.
Reading without a cookie
fb now reads Facebook as an anonymous web crawler. It presents a crawler user agent and reads the same server-rendered pages Facebook serves to search engines, so a public Page, profile, group, or post comes back as HTML with the text, counts, media, and a few preview comments baked in. There is no login, no cookie, and no browser to drive.
The whole cookie layer is gone: the --cookie and --cookie-file flags, the
FACEBOOK_COOKIE environment variables, and the cookie request header. fb whoami now reports the access mode and user agent instead of a session.
The trade-off is depth. A feed exposes the most recent posts rather than the
full history, and a post carries a handful of preview comments rather than its
whole thread. Private targets still exit 4.
Archiving
fb archive <page>mirrors a Page's recent feed to a browsable tree of Markdown: one file per post under<out>/<page>/YYYY/MM/, plus a generatedREADME.mdindexed by year and month with a stats table.- Re-running is incremental. A small
index.jsonrecords what is on disk, so a second run fetches only new posts;--forceoverwrites. The index and each post are written as the crawl proceeds, so an interrupted run resumes cleanly. - Post slugs are transliterated to ASCII, Vietnamese diacritics included, so accented titles produce clean file names.
Fixes
- Group post permalinks (
groups/<id>/posts/<id>) are now recognized when walking a feed.