Skip to main content

This python script syncs user watchlist, ratings and comments for Movies, TV Shows and Episodes both ways between Trakt and IMDB.

Project description

IMDB-Trakt-Syncer

This Python script syncs user watchlist, ratings and comments for Movies, TV Shows and Episodes both ways between Trakt and IMDB. Existing items will not be overwritten. Ratings are synced by default, watchlist and comment/review sync are optional. The user will be prompted to enter their settings and credentials on first run.

The script is compatible with operating systems that support Python (v3.6 or later) and Chromedriver (Windows, Linux and Mac). If you're interested in syncing ratings between Trakt, Plex, IMDB, and TMDB, I recommend the following projects: PlexTraktSync, IMDB-Trakt-Syncer, and TMDB-Trakt-Syncer. See below for my other recommended projects.

Installation Instructions

  1. Install Python (v3.6 or later) and Google Chrome. If these are already installed, you can skip this step. Please note this script does not affect Chrome in anyway, it is simply required in order for chromedriver to work.
  2. Install the script by executing python -m pip install IMDBTraktSyncer in command line.
  3. Login to Trakt and create a new API application named IMDBTraktSyncer. In the "Redirect uri" field, enter urn:ietf:wg:oauth:2.0:oob, then save the application.
  4. Run the script by executing IMDBTraktSyncer in the command line.
  5. Follow the prompts during the first run. You will need to enter your Trakt client ID and client secret from step 3, as well as your IMDB username and password. Please note that these details are saved insecurely as credentials.txt in the same folder as the script. It is recommended to change your IMDB password to something unique beforehand.
  6. Setup is complete. The script will continue running and syncing your ratings. You can monitor its progress in the command line.

Installing the Script:

python -m pip install IMDBTraktSyncer

Run in your operating system's native command line.

Running the Script:

IMDBTraktSyncer

Run in your operating system's native command line.

Updating the Script:

python -m pip install IMDBTraktSyncer --upgrade

Run in your operating system's native command line.

Uninstalling the Script:

python -m pip uninstall IMDBTraktSyncer

Run in your operating system's native command line.

Installing a Specific Version:

python -m pip install IMDBTraktSyncer==VERSION_NUMBER

Replace VERSION_NUMBER with your desired version (e.g. 1.1.6) and run in your operating system's native command line.

Alternative Manual Installation Method (without pip install)

  1. Install Python (v3.6 or later) and Google Chrome. If these are already installed, you can skip this step. Please note this script does not affect Chrome in anyway, it is simply required in order for chromedriver to work.
  2. Download the latest .zip from the releases page and extract it to the desired directory.
  3. Login to Trakt and create a new API application named IMDBTraktSyncer. In the "Redirect uri" field, enter urn:ietf:wg:oauth:2.0:oob, then save the application.
  4. Run IMDBTraktSyncer.py or open the terminal and navigate to the folder where IMDBTraktSyncer.py is located. Run IMDBTraktSyncer.py in the terminal.
  5. Follow the prompts during the first run. You will need to enter your Trakt client ID and client secret from step 3, as well as your IMDB username and password. Please note that these details are saved insecurely as credentials.txt in the same folder as the script. It is recommended to change your IMDB password to something unique beforehand.
  6. Setup is complete. The script will continue running and syncing your ratings. You can monitor its progress in the command line.

For Setting Up Automation See the Following Wiki Pages:

  • Setup Automation for:
  • Python Script to Update all Packages with Pip (Windows, Linux, Mac, ChromeOS, etc.) Link #1

Troubleshooting, Known Issues, Workarounds & Future Outlook

  • If IMDB requires a captcha on login, and you see "Not signed in" appear in the script, the captcha is likely the cause. To fix this, navigate to the IMDB website in your browser (preferably Chrome) from the same computer. If you're already logged in, log out and log back in. It may ask you to fill in a captcha. Complete the captcha and finish logging in. After successfully logging in on your browser, run the script again, and it should work. You may need to repeat this step once or twice if the issue persists. Adding a captcha solver to the script is being considered but not currently implemented. Issue #2
  • If you see an error about having the incorrect version of Chromedriver, uninstall it by running the following command in the command line: python -m pip uninstall chromedriver-py. In your Chrome browser, go to Settings > About Chrome and check the prefix for your version (e.g., 112... or 111). If the prefix matches your Chrome version, navigate to the chromedriver-py releases page and find the latest version that matches the prefix for your Chrome version. Copy the version number you need (e.g 113.0.5672.63), then run the following command in the command line: python -m pip install chromedriver-py==VERSION_NUMBER. Replace VERSION_NUMBER with the version you copied and press enter. This will install the correct version of Chromedriver. Run the script again, and it should work. Issue #16
  • If any of your details change (passwords, logins, API keys, etc.), simply open credentials.txt, modify your details, save it and then run the script again. Alternatively, delete credentials.txt to reset the script and it will prompt you to enter your new details on the next run.
  • Due to IMDB's lack of API and rating import ability, this script uses an unconventional method that mimics using a web browser to set ratings on IMDB. Therefore, there are many points of failure that could arise. The script will be updated as best as possible.
  • Add optional setting to remove watched items from watchlists Issue #44

Screenshot

Demo

Sponsorships, Donations, and Custom Projects

If you find my scripts helpful, you can become a sponsor and support my projects! If you need help with a project, open an issue, and I'll do my best to assist you. For other inquiries and custom projects, you can contact me on Twitter.

More Donation Options:

  • Cashapp: $rileyxx
  • Venmo: @rileyxx
  • Bitcoin: bc1qrjevwqv49z8y77len3azqfghxrjmrjvhy5zqau
  • Amazon Wishlist: Link ↗

Also Posted On

License: MIT

Other Recommended Projects:

Project Name Description
PlexTraktSync A script that syncs user watch history and ratings between Trakt and Plex (without needing a PlexPass or Trakt VIP subscription).
IMDB-Trakt-Syncer A script that syncs user watchlist, ratings, and comments both ways between Trakt and IMDB.
TMDB-Trakt-Syncer A script that syncs user watchlist and ratings both ways between Trakt and TMDB.
PlexPreferNonForcedSubs A script that sets all movies and shows in your local Plex library to English non-forced subtitles by default.
Casvt / PlexAutoDelete A script for automatically deleting watched content from Plex.
Netflix-to-Trakt-Import A tool to import your Netflix viewing history into Trakt.
trakt-tv-backup A command-line tool for backing up your Trakt.tv data.
blacktwin / JBOPS A collection of scripts and tools for enhancing and automating tasks in Plex.
Casvt / Plex-scripts A collection of useful scripts for Plex automation and management.
trakt---letterboxd-import A tool to import your Letterboxd ratings and watchlist into Trakt.
TraktRater A tool to help users transfer user episode, show, and movie user ratings and watchlists from multiple media database sites around the web.
TvTimeToTrakt A tool to sync your TV Time watch history with Trakt.tv.
Plex Media Server A media server software to organize and stream your personal media collection.
Radarr A movie collection manager and downloader for various platforms.
Sonarr A TV show collection manager and downloader for various platforms.
Jackett A proxy server that provides API support for various torrent trackers commonly used with Radarr and Sonarr.
qBittorrent A free and open-source BitTorrent client.
Mullvad VPN An open-source VPN client for Mullvad VPN service with port forwarding support. Great VPN for torrents.
Overseerr A request management and media discovery tool for your home media server.
FlareSolverr A reverse proxy solution to bypass Cloudflare protection and access websites commonly used with Jackett.
youtube-dl A command-line program to download videos from YouTube and other sites.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

IMDBTraktSyncer-1.3.9.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

IMDBTraktSyncer-1.3.9-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file IMDBTraktSyncer-1.3.9.tar.gz.

File metadata

  • Download URL: IMDBTraktSyncer-1.3.9.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for IMDBTraktSyncer-1.3.9.tar.gz
Algorithm Hash digest
SHA256 12bb64f623c8164fa55b64228d53cd6a0c2d35eaad46fffc332ed47070cb41a8
MD5 1da25714741a2efb2956aa28490d4136
BLAKE2b-256 ec07359d3c458f92c141712f2d7c8b4b71ad66f009ef49f60c38022456c80c2d

See more details on using hashes here.

File details

Details for the file IMDBTraktSyncer-1.3.9-py3-none-any.whl.

File metadata

File hashes

Hashes for IMDBTraktSyncer-1.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 3a7b49f564b8a0653f1de414d124176ed4727fa5197350c892281e139c8f1bbc
MD5 1556a878c313a1ee09e3ef0c04d9c5ac
BLAKE2b-256 852d2d2c38af71ffb4084ec7a5ccd558fa13d19badfa66346043007de3feb3de

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page