Skip to main content

Python asyncio IMDB client using the IMDB json web service made available for their iOS app.

Project description

aioimdb (IMDb + Python 3.6 + Asyncio)

Build Status

Python asyncio IMDb client using the IMDb JSON web service made available for their iOS app. This version requires Python 3.6 or later. It is based off of the synchronous version by Richard O'Dwyer.

API Terminology

  • Title this can be a movie, tv show, video, documentary etc.
  • Name this can be a credit, cast member, any person generally.

Installation

To install aioimdb, simply:

pip install aioimdb

How To Use

Initialise The Client

from aioimdb import Imdb
async with Imdb() as imdb
    result = await imdb.<method call>    # <-- see Available Methods below

Example:

from aioimdb import Imdb
async with Imdb() as imdb
    result = await imdb.get_title('tt0111161')

Available Methods

NOTE: For each client method, if the resource cannot be found they will raise LookupError, if there is an API error then ImdbAPIError will raise.

Example Description
await get_title('tt0111161') Returns a dict containing title information
await search_for_title("The Dark Knight") Returns a dict of results
await search_for_name("Christian Bale) Returns a dict of results
await title_exits('tt0111161') Returns True if exists otherwise False
await get_title_genres('tt0303461') Returns a dict containing title genres information
await get_title_credits('tt0303461') Returns a dict containing title credits information
await get_title_quotes('tt0303461') Returns a dict containing title quotes information
await get_title_ratings('tt0303461') Returns a dict containing title ratings information
await get_title_connections('tt0303461') Returns a dict containing title connections information
await get_title_similarities('tt0303461') Returns a dict containing title similarities information
await get_title_videos('tt0303461') Returns a dict containing title videos information
await get_title_news('tt0303461') Returns a dict containing news
await get_title_trivia('tt0303461') Returns a dict containing trivia
await get_title_soundtracks('tt0303461') Returns a dict containing soundtracks information
await get_title_goofs('tt0303461') Returns a dict containing "goofs" and teaser information
await get_title_technical('tt0303461') Returns a dict containing technical information
await get_title_companies('tt0303461') Returns a dict containing information about companies related to title
await get_title_episodes('tt0303461') Returns a dict containing season and episodes information
await get_title_episodes_detailed(imdb_id='tt0303461', season=1) Returns a dict containing detailed season episodes information
await get_title_top_crew('tt0303461') Returns a dict containing detailed information about title's top crew (ie: directors, writters, etc.)
await get_title_plot('tt0111161') Returns a dict containing title plot information
await get_title_plot_synopsis('tt0111161') Returns a dict containing title plot synopsis information
await get_title_awards('tt0111161') Returns a dict containing title plot information
await get_title_releases('tt0111161') Returns a dict containing releases information
await get_title_versions('tt0111161') Returns a dict containing versions information (meaning different versions of this title for different regions, or different versions for DVD vs Cinema)
await get_title_user_reviews('tt0111161') Returns a dict containing user review information
await get_title_metacritic_reviews('tt0111161') Returns a dict containing metacritic review information
await get_title_images('tt0111161') Returns a dict containing title images information
await get_name('nm0000151') Returns a dict containing person/name information
await get_name_filmography('nm0000151') Returns a dict containing person/name filmography information
await get_name_images('nm0000032') Returns a dict containing person/name images information
await get_name_videos('nm0000032') Returns a dict containing person/name videos information
validate_imdb_id('tt0111161') Raises ValueError if not valid
await get_popular_titles() Returns a dict containing popular titles information
await get_popular_shows() Returns a dict containing popular tv shows
await get_popular_movies() Returns a dict containing popular movies

Requirements

1. Python 3.6 or later
2. See requirements.txt

Running The Tests

pip install -r test_requirements.txt
py.test tests

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

aioimdb-1.1.2.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

aioimdb-1.1.2-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file aioimdb-1.1.2.tar.gz.

File metadata

  • Download URL: aioimdb-1.1.2.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aioimdb-1.1.2.tar.gz
Algorithm Hash digest
SHA256 f926a429752cc5ecd10ad5b9876bfe97dedead54b4ef021805ce35bba358455a
MD5 1e43446e72df643bb9c45ccc84b7e529
BLAKE2b-256 021e2f5af9992a2bf68529acddeaeea099867c8bf943c8f5470751925f5285a3

See more details on using hashes here.

File details

Details for the file aioimdb-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for aioimdb-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 aa9d7d2548e4b8dcc4440667c36a7a48d59011aaf1e9005134e52c8ea41b58f4
MD5 d57dc02950c6eab7042a7e1ac3c2827b
BLAKE2b-256 6f9d26ba69b475298a57f9cd9ce360ca062e22c2d08e6d3adca0cd057d372479

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