Skip to main content

A lightweight Python library for The V3 and V4 TMDb APIs.

Project description

Welcome to TMDbAPIs Documentation!

GitHub release (latest by date) Build Testing Build Coverage GitHub commits since latest release (by date) for a branch PyPI Downloads

Wiki Discord Reddit GitHub Sponsors Sponsor or Donate

Overview

Unofficial Python bindings for the TMDb API. The goal is to make interaction with the API as easy as possible while emulating the endpoints as much as possible

Installation & Documentation

pip install tmdbapis

Documentation can be found at Read the Docs.

Using the Object API

Getting a TMDbAPIs Instance

To create a TMDbAPIs Object you need your V3 API Key, which can be found following this guide.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"

tmdb = TMDbAPIs(apikey)

Authenticating V3 API Token

To authenticate your TMDb V3 API Token you can either authenticate your TMDb V4 Token or use the authenticate() method.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"

tmdb = TMDbAPIs(apikey)
tmdb.authenticate(username, password)

Saving a V3 API Authenticated Session

To save your authenticated session use the session_id Attribute.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"

tmdb = TMDbAPIs(apikey)
tmdb.authenticate(username, password)
with open("session_id.txt", "w") as text_file:
    print(tmdb.session_id, file=text_file)

To load the authenticated session use the session_id Parameter of the TMDbAPIs constructor.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"

session_id = None
with open("session_id.txt") as text_file:
    session_id = text_file.readline()

tmdb = TMDbAPIs(apikey, session_id=session_id)

Adding TMDb V4 API Read Access Token

To gain read access to TMDb V4’s API just provide you’re TMDb V4 Access Token either using the v4_access_token Parameter of the TMDbAPIs constructor or by using the v4_access_token() method.

To gain read access to TMDb V4’s API need your TMDb V4 Access Token, which can be found following this guide.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"
v4_access_token = "sohsnrfiemrsdvsavvt4h426GWEGW434gSgSdnjhcyuwbBYHBOSIYCBWgyNTYxNTY4OGQ5NTJjZCIsInN1YiI6IjVkMzM5ZmI0MmY4ZDAfdfdgegeGGregerfge34345BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIvfdvsdfveregrgqgfsfghjhOR0shmZZ_ZekFiuyl7o56921C0"

tmdb = TMDbAPIs(apikey, v4_access_token=v4_access_token)

Authenticating TMDb V4 API Token

To authenticate your TMDB V4 Read Access Token it is a multi step process.

  1. Add your TMDb V4 API Read Access Token.

  2. Authenticate the URL returned from v4_authenticate().

  3. Once the URL has been authenticated you must approve it by running v4_approved().

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"
v4_access_token = "sohsnrfiemrsdvsavvt4h426GWEGW434gSgSdnjhcyuwbBYHBOSIYCBWgyNTYxNTY4OGQ5NTJjZCIsInN1YiI6IjVkMzM5ZmI0MmY4ZDAfdfdgegeGGregerfge34345BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIvfdvsdfveregrgqgfsfghjhOR0shmZZ_ZekFiuyl7o56921C0"

tmdb = TMDbAPIs(apikey, v4_access_token=v4_access_token)

print(tmdb.v4_authenticate())
input("Navigate to the URL and then hit enter when Authenticated")
tmdb.v4_approved()

Saving a V4 API Authenticated Token

To save your authenticated token use the v4_access_token Attribute.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"
v4_access_token = "sohsnrfiemrsdvsavvt4h426GWEGW434gSgSdnjhcyuwbBYHBOSIYCBWgyNTYxNTY4OGQ5NTJjZCIsInN1YiI6IjVkMzM5ZmI0MmY4ZDAfdfdgegeGGregerfge34345BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIvfdvsdfveregrgqgfsfghjhOR0shmZZ_ZekFiuyl7o56921C0"

tmdb = TMDbAPIs(apikey, v4_access_token=v4_access_token)

print(tmdb.v4_authenticate())
input("Navigate to the URL and then hit enter when Authenticated")
tmdb.v4_approved()
with open("access_token.txt", "w") as text_file:
    print(tmdb.v4_access_token, file=text_file)

To load the authenticated token use the v4_access_token Parameter of the TMDbAPIs constructor or the v4_access_token() method.

from tmdbapis import TMDbAPIs

apikey = "0010843563404748808d3fc9c562c05e"

v4_access_token = None
with open("access_token.txt") as text_file:
    v4_access_token = text_file.readline()

tmdb = TMDbAPIs(apikey, v4_access_token=v4_access_token)

Usage & Contributions

  • Source is available on the Github Project Page.

  • Contributors to TMDbAPIs own their own contributions and may distribute that code under the MIT license.

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

tmdbapis-1.2.21.tar.gz (60.2 kB view details)

Uploaded Source

Built Distribution

tmdbapis-1.2.21-py3-none-any.whl (57.9 kB view details)

Uploaded Python 3

File details

Details for the file tmdbapis-1.2.21.tar.gz.

File metadata

  • Download URL: tmdbapis-1.2.21.tar.gz
  • Upload date:
  • Size: 60.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for tmdbapis-1.2.21.tar.gz
Algorithm Hash digest
SHA256 6630177ac2f894e7e671295a0a1b03f8e69aeb6ffda748c081727df7453c3eef
MD5 fb669fda198910d21171caaefe441887
BLAKE2b-256 a3cbfe2ce7062996c0bca05a27d10f272a8fd921c2b8c4ededbd903265910bbc

See more details on using hashes here.

File details

Details for the file tmdbapis-1.2.21-py3-none-any.whl.

File metadata

  • Download URL: tmdbapis-1.2.21-py3-none-any.whl
  • Upload date:
  • Size: 57.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for tmdbapis-1.2.21-py3-none-any.whl
Algorithm Hash digest
SHA256 a11f2d2c4f033bb30577ba558d9d435fcd62274a45d8a179cff1e2516b4da0b9
MD5 b70c641c33fb8766e344d114a4205426
BLAKE2b-256 7c65dcebc99f016450636425387f24c6230aafc770cc9e864773dca22ca972d4

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