Skip to main content

Command-line tools for Trakt.tv.

Project description

https://img.shields.io/travis/fuzeman/trakt-tools.svg?maxAge=2592000?style=flat-square https://img.shields.io/github/release/fuzeman/trakt-tools.svg?maxAge=2592000?style=flat-square https://img.shields.io/pypi/v/trakt-tools.svg?maxAge=2592000?style=flat-square

Command-line tools for Trakt.tv.

I’ve done my best to ensure there isn’t any critical bugs in this application, but please ensure your Trakt.tv profile has been backed up before running any operations with this application.

If you are concerned about data-loss: I would suggest reviewing the created backups yourself, they are simple JSON files that can be opened in any text editor. Backup files are structured exactly how they are returned from the Trakt.tv API.

Note: Backups can’t be applied to profiles yet, this feature will be available soon.

Install

pip install trakt-tools

Usage

>From a command-line, either run:

trakt_tools [COMMAND] [ARGS]

or:

python -m trakt_tools.runner.main [COMMAND] [ARGS]

Commands

Usage: trakt_tools [OPTIONS] COMMAND [ARGS]...

Options:
  --debug / --no-debug  Display debug messages. (default: disabled)
  --rate-limit INTEGER  Maximum number of requests per minute. (default: 20)
  --help                Show this message and exit.

history:duplicates:merge

Usage: trakt_tools history:duplicates:merge [OPTIONS]

  Merge duplicate history records

Options:
  --token TEXT            Trakt.tv authentication token. (default: prompt)
  --backup-dir TEXT       Directory that backups should be stored in. (default: "./backups")
  --delta-max INTEGER     Maximum delta between history records to consider as duplicate (in seconds). (default: 600)
  --per-page INTEGER      Request page size. (default: 1000)
  --backup / --no-backup  Backup profile before applying any changes. (default: prompt)
  --review / --no-review  Review each action before applying them. (default: prompt)
  --help                  Show this message and exit.

history:duplicates:scan

Usage: trakt_tools history:duplicates:scan [OPTIONS]

  Scan for duplicate history records

Options:
  --token TEXT         Trakt.tv authentication token. (default: prompt)
  --delta-max INTEGER  Maximum delta between history records to consider as duplicate (in seconds). (default: 600)
  --per-page INTEGER   Request page size. (default: 1000)
  --help               Show this message and exit.

profile:backup:apply (coming soon)

Usage: trakt_tools profile:backup:apply [OPTIONS]

  Apply backup to a Trakt.tv profile

Options:
  --help  Show this message and exit.

profile:backup:create

Usage: trakt_tools profile:backup:create [OPTIONS]

  Create backup of a Trakt.tv profile

Options:
  --token TEXT        Trakt.tv authentication token. (default: prompt)
  --backup-dir TEXT   Directory that backups should be stored in. (default: "./backups")
  --per-page INTEGER  Request page size. (default: 1000)
  --help              Show this message and exit.

Examples

Delete duplicate history record(s):

$ trakt_tools history:duplicates:merge
Navigate to https://trakt.tv/pin/10248
Pin: <Type PIN, ENTER>

Requesting profile...
Logged in as u'fuzeman'

Would you like to continue? [yes]: <ENTER>

Create profile backup? [yes]: <ENTER>

Collection
 - Received 248 movie(s)
 - Writing to "collection\movies.json"...
 - Received 377 show(s)
 - Writing to "collection\shows.json"...

History
 - Received 1000 item(s) (page 1 of 16)
 - Received 1000 item(s) (page 2 of 16)
 - Received 1000 item(s) (page 3 of 16)
 - Received 1000 item(s) (page 4 of 16)
 - Received 1000 item(s) (page 5 of 16)
 - Received 1000 item(s) (page 6 of 16)
 - Received 1000 item(s) (page 7 of 16)
 - Received 1000 item(s) (page 8 of 16)
 - Received 1000 item(s) (page 9 of 16)
 - Received 1000 item(s) (page 10 of 16)
 - Received 1000 item(s) (page 11 of 16)
 - Received 1000 item(s) (page 12 of 16)
 - Received 1000 item(s) (page 13 of 16)
 - Received 1000 item(s) (page 14 of 16)
 - Received 1000 item(s) (page 15 of 16)
 - Received 665 item(s) (page 16 of 16)
 - Writing to "history.json"...

Playback Progress
 - Received 92 item(s)
 - Writing to "playback.json"...

Ratings
 - Received 352 item(s)
 - Writing to "ratings.json"...

Watchlist
 - Received 161 item(s)
 - Writing to "watchlist.json"...

Compressing backup...
Cleaning up...
Backup has been saved to: ".\backups\fuzeman\2016-09-15_05-16-27.639000.zip"

Scanning for duplicates...
 - Processing 1000 items... (page 1 of 16)
 - Processing 1000 items... (page 2 of 16)
 - Processing 1000 items... (page 3 of 16)
 - Processing 1000 items... (page 4 of 16)
 - Processing 1000 items... (page 5 of 16)
 - Processing 1000 items... (page 6 of 16)
 - Processing 1000 items... (page 7 of 16)
 - Processing 1000 items... (page 8 of 16)
 - Processing 1000 items... (page 9 of 16)
 - Processing 1000 items... (page 10 of 16)
 - Processing 1000 items... (page 11 of 16)
 - Processing 1000 items... (page 12 of 16)
 - Processing 1000 items... (page 13 of 16)
 - Processing 1000 items... (page 14 of 16)
 - Processing 1000 items... (page 15 of 16)
 - Processing 665 items... (page 16 of 16)

Found 2 show(s) and 2 movie(s) with duplicates

Review every action? [yes]: <ENTER>

"Breaking Bad" (2008)
        S01E01 - 4 plays -> 3 plays
                Jan 21, 2008 03:00 PM NZDT (2008-01-21T02:00:00+00:00)
                Sep 26, 2011 10:18 PM NZDT (2011-09-26T09:18:20+00:00)
                Oct 06, 2013 04:47 PM NZDT (2013-10-06T03:47:08+00:00)

Remove 1 duplicate history record(s) for "Breaking Bad" (2008)? [yes]: <ENTER>
Removed 1 episode record(s) from history

----------------------------------------------------------------------

"Orphan Black" (2013)
        S01E01 - 3 plays -> 2 plays
                Mar 31, 2013 03:00 PM NZDT (2013-03-31T02:00:00+00:00)
                Apr 08, 2013 01:23 AM NZST (2013-04-07T13:23:52+00:00)

Remove 1 duplicate history record(s) for "Orphan Black" (2013)? [yes]: <ENTER>
Removed 1 episode record(s) from history

----------------------------------------------------------------------

"Inception" (2010) - 4 plays -> 3 plays
        Sep 14, 2016 10:15 PM NZST (2016-09-14T10:15:00+00:00)
        Jul 16, 2010 10:00 PM NZST (2010-07-16T10:00:00+00:00)
        Oct 26, 2011 07:07 PM NZDT (2011-10-26T06:07:25+00:00)

Remove 1 duplicate history record(s) for "Inception" (2010)? [yes]: <ENTER>
Removed 1 movie record(s) from history

----------------------------------------------------------------------

"The Matrix" (1999) - 3 plays -> 2 plays
        Mar 30, 1999 10:00 PM NZST (1999-03-30T10:00:00+00:00)
        Aug 20, 2011 12:04 PM NZST (2011-08-20T00:04:30+00:00)

Remove 1 duplicate history record(s) for "The Matrix" (1999)? [yes]: <ENTER>
Removed 1 movie record(s) from history

----------------------------------------------------------------------

Done

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

trakt-tools-0.1.2.tar.gz (18.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trakt_tools-0.1.2-py2.py3-none-any.whl (29.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file trakt-tools-0.1.2.tar.gz.

File metadata

  • Download URL: trakt-tools-0.1.2.tar.gz
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for trakt-tools-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e39c34013d66a51d118ae2d2d9acec85c9986c42c3d6b3f438052db04efd64d3
MD5 1030ec0072a2e48a8d39e411d83da276
BLAKE2b-256 597dcccc36a41f14037b7e25a3cbfb5e6709351570c983d16cf9a800cfcdded2

See more details on using hashes here.

File details

Details for the file trakt_tools-0.1.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for trakt_tools-0.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f6c1bc07f4f38b365dfb175efa0cb384b4c947e0cf46484fef72cab3534b541c
MD5 e918157a3f5fefc5fb9fcb886130e03b
BLAKE2b-256 085f4ab5bb1ef6deaf115e887374867c773c53745d161d0b8f6e51b1aa928721

See more details on using hashes here.

Supported by

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