mirror of
https://github.com/SinTan1729/TvTimeToTrakt.git
synced 2024-12-26 13:28:37 -06:00
52 lines
No EOL
2.7 KiB
Markdown
52 lines
No EOL
2.7 KiB
Markdown
# TV Time to Trakt - Import Script
|
|
![](https://loch.digital/image_for_external_apps/4342799-01.png)
|
|
|
|
A Python script to import TV Time tracked episode data into Trakt.TV - using data export provided by TV Time through a GDPR request.
|
|
|
|
# Issues
|
|
They'll be a few! This was quickly put together within a few hours or so for personal usage. If you come across anything then let me know in the 'Issue' section, and I'll provide support where possible.
|
|
|
|
# Notes
|
|
1. The script is using limited data provided from a GDPR request - so the accuracy isn't 100%. But you will be prompted to manually pick the Trakt show, when it can't be determined automatically.
|
|
2. A delay of 5 seconds is added between each episode to ensure fair use of Trakt's API server. You should adjust this for your own import, but make sure it's at least 1 second to remain within the rate limit.
|
|
3. Episodes which have been processed will be saved to a TinyDB file `localStorage.json` - when you restart the script, the program will skip those episodes which have been marked 'imported'.
|
|
|
|
# Setup
|
|
## Get your Data
|
|
TV Time's API is not open. In order to get access to your personal data, you will have to request it from TV Time's support via a GDPR request - or maybe just ask for it, whatever works, it's your data.
|
|
|
|
1. Copy the template provided by [www.datarequests.org](https://www.datarequests.org/blog/sample-letter-gdpr-access-request/) into an email
|
|
2. Send it to support@tvtime.com
|
|
3. Wait a few working days for their team to process your request
|
|
4. Extract the data somewhere safe on your local system
|
|
|
|
## Register API Access at Trakt
|
|
1. Go to "Settings" under your profile
|
|
2. Select ["Your API Applications"](https://trakt.tv/oauth/applications)
|
|
3. Select "New Application"
|
|
4. Provide a name into "Name" e.g John Smith Import from TV Time
|
|
5. Paste "urn:ietf:wg:oauth:2.0:oob" into "Redirect uri:"
|
|
6. Click "Save App"
|
|
7. Make note of your details to be used later.
|
|
|
|
## Setup Script
|
|
### Install Required Libraries
|
|
Install the following frameworks via Pip:
|
|
1. `pip install trakt`
|
|
2. `pip install tinydb`
|
|
### Setup Configuration
|
|
Create a new file named `config.json` in the same directory of `TimeToTrakt.py`, using the below JSON contents (replace the values with your own).
|
|
|
|
```
|
|
{
|
|
"CLIENT_ID": "YOUR_CLIENT_ID",
|
|
"CLIENT_SECRET": "YOUR_CLIENT_SECRET",
|
|
"GDPR_WORKSPACE_PATH": "DIRECTORY_OF_YOUR_GDPR_REQUEST_DATA",
|
|
"TRAKT_USERNAME": "YOUR_TRAKT_USERNAME"
|
|
}
|
|
```
|
|
|
|
Once the config is in place, execute the program using `python TimeToTrakt.py`. The process isn't 100% automated - you will need to pop back, especially with large imports, to check if the script requires a manual user input.
|
|
|
|
##### Credit
|
|
<a href='https://www.freepik.com/vectors/city'>City vector created by freepik - www.freepik.com</a> |