This plugin produces an entry for each film in any public Letterboxd list. These entries can then be added to the movie_queue, used to initiate a search with discover, or passed to some other output plugin. Results are cached for two hours to avoid flooding the site.
|Paramaters||An asterisk (*) indicates that the parameter is required|
|username*||Your or another user's Letterboxd username.|
|list*||The name of a custom list, or one of the following built in lists:
|sort_by||Determines the order in which films in the list will be returned (see below).|
|max_results||An integer specifying the maximum number of films that will be returned from the list.|
|name||Sorted by film title, ascending alphabetically.|
|added||Sorted by the date the film was added to the list, from most to least recent.|
|popularity||Sorted in descending order of popularity among Letterboxd users.|
|length-ascending||Sorted by runtime, from shortest to longest.|
|length-descending||Sorted by runtime, from longest to shortest.|
|rating-ascending||Sorted by the average rating given by Letterboxd users, from lowest to highest.|
|rating-descending||Sorted by the average rating given by Letterboxd users, from highest to lowest.|
|release-ascending||Sorted by date of theatrical release, from least to most recent.|
|release-descending||Sorted by date of theatrical release, from most to least recent.|
The username and list parameters should be entered exactly as they appear in the URL for the list. For example, to get films from a list at
the username would be
Some User), and the list would
Some User's list).
The plugin can easily be used to queue up films from your Letterboxd watchlist to be downloaded by another task:
tasks: queue-letterboxd-watchlist: letterboxd: username: ***** list: watchlist accept_all: yes movie_queue: add
In addition to
movie_year, entries created by the plugin are populated with a few site-specific fields:
|letterboxd_list||The list that the entry was pulled from, in the format
|letterboxd_score||The average rating (out of 10) given to the film by Letterboxd users (included when available).|
|letterboxd_uscore||The rating (out of 10) given to the film by the list owner (included for
You can of course filter against any of these fields.
letterboxd_list may be useful where more than one input plugin (or more than one Letterboxd list) is included in the task.
letterboxd_uscore can used in conjunction with Python if statements, like so:
tasks: queue-well-reviewed-films: letterboxd: username: ***** list: diary if: - 'letterboxd_uscore >= 8': accept movie_queue: add
When dealing with large lists, it may be worthwhile to feed entries to an intermediary plugin such as
list_add. There is no publicly available API for Letterboxd as of yet, so the plugin works by combing through the HTML source code for each film's page on the site. This isn't particularly fast if you want to, say, use crossmatch to reject films you've marked as seen on Letterboxd. In that case, you could have your config set up like this:
tasks: add-to-trakt: letterboxd: username: ***** list: watched sort_by: added max_results: 20 # <--- Set depending on how often you run the task; high enough that it will catch all new entries, accept_all: yes # but low enough so as not to parse (much) more of the list than is necessary. trakt_add: username: ***** password: ***** list: watched download-films: some_input_plugin: ... crossmatch: from: - trakt_list: username: ***** password: ***** list: watched type: movies fields: - imdb_id action: reject ...