3 unstable releases
Uses new Rust 2024
| 0.2.0 | Mar 25, 2026 |
|---|---|
| 0.1.1 | Jan 22, 2026 |
| 0.1.0 | Jan 22, 2026 |
#813 in Command line utilities
22KB
267 lines
fa-to-letterboxd
A simple webscraping tool to convert a FilmAffinity profile to Letterboxd's import format. Inspired by fa-scraper.
Requirements
- Rust (in case you want to install using
cargo).
Installation
Using cargo
- Simply run:
cargo install fa-to-letterboxd
Using pre-compiled binaries
- Go to the latest release.
- Select your platform (Windows, macOS, different Linux architectures/libc implementations).
- Download and extract the executable.
Usage
- Go to your FilmAffinity profile and copy your user ID number from the link.
- Run the program, specifying at least user ID (
-u). Wait for it to complete. By default, it'll fetch up to 1000 pages of content. If by any case, you have more, add-p <page_count>. For the full list of flags, runfilmaffinity-to-letterboxd -h. If using a pre-compiled binary, remember to add./right next to the program's name on UNIX or appending.exeto the program's name if using Windows.
filmaffinity-to-letterboxd -u <user_id>
./filmaffinity-to-letterboxd -u <user_id>
filmaffinity-to-letterboxd.exe -u <user_id>
[!WARNING] The app will delay the next request after processing all data by a random integral range of [1, 3]. Although as far as testing goes, no delay hasn't caused any issues, better to be safe than sorry. To disable it, add
-dto the flags.
- Once you have your file ready (by default, saved as
fa-to-letterboxd-result.csv), head to Letterboxd's Import page and upload it by clicking "SELECT A FILE". It'll take a while to process it all.
- When finished, you'll be redirected to a page where you can confirm the export. To reduce the number of entries on screen, click "Hide successful matches".
[!WARNING] When importing, not all entries will get exported. This may be due to an entry having a different name in Letterboxd or outright not being there (series or individual chapters from series are usually the ones missing). You can try and search movies for each missing match. TODO: Add some sort of table for title conversions/pattern matching. Maybe ignoring anything that's not a film and storing a separate .csv for those will work, too.
Dependencies
~25–36MB
~562K SLoC