Skip to main content

A Python wrapper for TMDb API

Project description

logo yelp

ezapi-tmdb

pytest Code style: black PyPI - License PyPI - Python Version PyPI Downloads

All Contributors

A Python wrapper for TMDb API, supporting version 3 and 4

Install

From PyPi

pip install ezapi-tmdb

From GitHub

pip install git+https://github.com/zehengl/ezapi-tmdb.git

Usage

  1. All endpoints are mapped to functions in a TMDb object
  2. All query string params are used as keyword arguments

Version 3 Example

See Version 3 documents for detailed API usage.

from tmdb import TMDb3

api_key = "..."

tmdb = TMDb3(api_key)

# query string params are used as keyword arguments
print(tmdb.get_popular_movies(region="US"))
print(tmdb.get_tvs_on_the_air(page=10))

# create session_id with username/password login
username = "..."
password = "..."
request_token = tmdb.create_request_token().get("request_token")
tmdb.create_session_with_login(username, password, request_token)
session_id = tmdb.create_session(request_token).get("session_id")

# some endpoints require session_id
print(tmdb.get_account_details(session_id=session_id))

# store global options, language / region for example
tmdb.set_options(language="de", region="de")
tmdb.get_trending("all", "week")

# reset global options
tmdb.reset_options()

# configure image languages globally
tmdb.set_options(include_image_language=["en", "null"])
tmdb.get_movie_images(597)

# url param per request would overwrite global options
tmdb.get_movie_images(597, include_image_language=["de", "fr"])

Version 4 Example

See Version 4 documents for detailed API usage.

from tmdb import TMDb4

# API Read Access Token from the settings page
access_token = "..."

tmdb = TMDb4(access_token)

# create a user access token
request_token = tmdb.create_request_token().get("request_token")
print(f"https://www.themoviedb.org/auth/access?request_token={request_token}")

# click on the link above, sign in, then approve access
resp = tmdb.create_access_token(request_token)

# extract the user access token and account id for v4 api
user_access_token = resp.get("access_token")
account_id = resp.get("account_id")

tmdb.update_access_token(user_access_token)

tmdb.get_list(14105)
tmdb.get_account_favorite_movies(account_id)

Test

git clone git@github.com:zehengl/ezapi-tmdb.git
export api_key="..."
export username="..."
export password="..."
export access_token="..."
cd ezapi-tmdb
python setup.py test

Use $Env:api_key="..." , $Env:username="...", $Env:password="...", and $Env:access_token="..." to set the api key, username, password, and access token environment variables on Windows.

Credits

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Cologler

💻

Rafael Pierre

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

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

ezapi_tmdb-0.8.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

ezapi_tmdb-0.8.0-py3-none-any.whl (32.1 kB view details)

Uploaded Python 3

File details

Details for the file ezapi_tmdb-0.8.0.tar.gz.

File metadata

  • Download URL: ezapi_tmdb-0.8.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.7

File hashes

Hashes for ezapi_tmdb-0.8.0.tar.gz
Algorithm Hash digest
SHA256 dd9e260436a03febc51f13f6310438d690938af86a8df6ebd6ef8e91b7693ce1
MD5 d306bdd316002907274cdc6850a2f9b2
BLAKE2b-256 c3c71bb2ec0b3977bf6c760f62d5422ab584296c8713c3acba03e444f0f62476

See more details on using hashes here.

File details

Details for the file ezapi_tmdb-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: ezapi_tmdb-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 32.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.7

File hashes

Hashes for ezapi_tmdb-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 092f603d6fff62d470119ee4a390066a1dabc7be3943ee7c923b1334b167593b
MD5 c2fa5cf78bf900b3d8a87e672fc3a936
BLAKE2b-256 6e5ffe9d6ad3bb0f505f4a2443e995e01e64b93e6cb2d5291a90679d855fee65

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