v0.1.1
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 cookie layer is gone: the
--cookieand--cookie-fileflags, theFACEBOOK_COOKIEenvironment variables, and the cookie request header. fb whoaminow 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.
Install
Homebrew
brew install tamnd/tap/fbScoop (Windows)
scoop bucket add tamnd https://github.com/tamnd/scoop-bucket
scoop install fbContainer
docker run --rm ghcr.io/tamnd/fb:0.1.1 versionDebian / Ubuntu, Fedora / RHEL, Alpine
Download the .deb, .rpm, or .apk for your architecture from the assets below and install it with your package manager.
Binary
Download the archive for your platform from the assets below, extract, and put fb on your PATH.
Notes
- Every archive ships a CycloneDX SBOM, and
checksums.txtis signed with keyless cosign (checksums.txt.sig+checksums.txt.pem).
Documentation: https://facebook-cli.tamnd.com