Skip to main content

A Python service for querying IMDb data

Project description

Build Status PyPI Version Python Versions PyPI Downloads

imdbinfo

Your personal gateway to IMDb data. Search for movies, series and people and get structured information in seconds.

Features

  • 🔍 Search movies,series, miniseries and people by name or title
  • 🎬 Detailed movie info including cast, crew, ratings and more
  • 👥 Detailed person info with biography, filmography and images
  • 📺 TV series and miniseries support with seasons and episodes
  • 📅 Release dates and box office information
  • 🌍 International titles and alternate titles
  • 📸 Poster images and backdrops
  • 📊 Ratings from IMDb and other sources
  • 🗂️ Full filmography for actors, directors and writers
  • 📝 Typed Pydantic models for predictable responses
  • No API keys required

Installation

pip install imdbinfo

Quick Start

from imdbinfo.services import search_title, get_movie, get_name, get_episodes

# Search for a title
results = search_title("The Matrix")
for movie in results.titles:
    print(f"{movie.title} ({movie.year}) - {movie.imdb_id}")

# Get movie details
movie = get_movie("0133093") # or 'tt0133093'
print(movie.title, movie.year, movie.rating)

# Get movie kind:
print(movie.kind) # movie, tvSeries, tvMiniSeries, tvEpisode, video
print(movie.is_series()) # False

# Get person details
person = get_name("nm0000206")# or '0000206' 
print(person.name, person.birth_date)

Working with Series and Episodes

The movie object provides helpful methods to identify its type:

  • movie.is_series() — Returns True if the movie is a series.
  • movie.is_episode() — Returns True if the movie is an episode.

Depending on the type, you can access additional information:

  • For series: use movie.info_series to get series details.
  • For episodes: use movie.info_episode to get episode details.

Example: Working with Series and Episodes

from imdbinfo.services import get_movie, get_episodes

# Fetch a TV series as a Movie object
walking_dead_serie = get_movie("tt1520211")  # Walking Dead

# Check if the object is a series
print(walking_dead_serie.is_series())  # True

# Access series-specific information
print(f"Series Info: {walking_dead_serie.info_series}")

# Retrieve all episodes for the series
walking_dead_episodes = get_episodes(walking_dead_serie.imdb_id)

# Print details for the first 3 episodes
for episode_info in walking_dead_episodes[:3]:
    print(episode_info)

# Fetch a single episode as a Movie object and check its type
episode_detail = get_movie(episode_info.imdb_id)
print("Is Episode:", episode_detail.is_episode())  # True

# Access episode-specific information: series imdbid, season and episode number ...
print(f"Episode Info: {episode_detail.info_episode}")

For more examples see the examples folder.

💡 Looking for a ready-to-use API based on this package? Check out qdMovieAPI — a fast and simple way to access IMDb data via REST!

Why choose imdbinfo?

  • Easy to use Python API
  • Returns clean structured data
  • Powered by requests and lxml
  • Uses Pydantic for type safety
  • No external dependencies or API keys required
  • Ideal for quick scripts and data analysis

Disclaimer

This project and its authors are not affiliated in any way with IMDb Inc. or its affiliates. For more information, please refer to the DISCLAIMER file.

License

imdbinfo is released under the MIT License. See the LICENSE file for details.

Contributing

Contributions are welcome! Open an issue or pull request on GitHub.

If you find this project useful, please consider giving it a ⭐ on GitHub!

Please read our Contributing Guidelines and Code of Conduct before contributing.

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

imdbinfo-0.4.0.tar.gz (603.6 kB view details)

Uploaded Source

Built Distribution

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

imdbinfo-0.4.0-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

Details for the file imdbinfo-0.4.0.tar.gz.

File metadata

  • Download URL: imdbinfo-0.4.0.tar.gz
  • Upload date:
  • Size: 603.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.17

File hashes

Hashes for imdbinfo-0.4.0.tar.gz
Algorithm Hash digest
SHA256 3863579386b06855bc82244e4cc896fc68108ed02b644edf138947851c7023e7
MD5 7df48e285067d6b91b3ed54cef2e206e
BLAKE2b-256 380fe1310b0e6919b42ff410ac6f7252e1abc09e0a26850a6bb839aa7f26755f

See more details on using hashes here.

File details

Details for the file imdbinfo-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: imdbinfo-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.17

File hashes

Hashes for imdbinfo-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3c8ba10f68ebfb0fa254b3f33b6d80dc19146f25b472d67cffb1dd1b1b331259
MD5 6a1d55b5f4e2e54b9150e85c2b192d17
BLAKE2b-256 e7a42a3474d6028f3dca582df1e988694100e49a83a307cfe92d621d02791a5d

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