Name | imdbinfo JSON |
Version |
0.5.4
JSON |
| download |
home_page | None |
Summary | A Python service for querying IMDb data |
upload_time | 2025-09-11 06:30:17 |
maintainer | None |
docs_url | None |
author | None |
requires_python | None |
license | None |
keywords |
imdb
movie
information
data
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
[](https://pepy.tech/projects/imdbinfo)
[](https://pypi.org/project/imdbinfo/)
[](https://github.com/tveronesi/imdbinfo/actions/workflows/pypi-publish.yml)
[](https://pypi.org/project/imdbinfo/)
[//]: # ()
# 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
- 🌐 **Localized results** in multiple languages (set globally or per request)
- 📅 **Release dates** and **box office** information
- 🌍 **International titles** and **alternate titles (AKAs)** via `get_akas`
- 📸 **Poster images** and **backdrops**
- 📊 **Ratings** from IMDb and other sources
- 📝 **User reviews and ratings** via `get_reviews`
- 🎭 **Movie trivia and interesting facts** via `get_trivia`
- 🗂️ **Full filmography** for actors, directors and writers
- 📝 **Typed Pydantic models** for predictable responses
- ⚡ **Built-in caching** for faster repeated requests
- ✅ **No API keys required**
## Installation
```bash
pip install imdbinfo
```
## Quick Start
```python
from imdbinfo import search_title, get_movie, get_name, get_season_episodes, get_reviews, get_trivia
# 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, tvMovie, tvEpisode, tvSpecial, tvShort, short, videoGame, video, musicVideo, podcastEpisode, podcastSeries
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
```python
from imdbinfo import get_movie, get_season_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 episodes for the series season 1
walking_dead_episodes = get_season_episodes(walking_dead_serie.imdb_id, season=1)
# Print details for the first 3 episodes from the season 1
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}")
```
#### All episodes in a series
You can now retrieve all episodes in a series with a single call:
```python
from imdbinfo import get_all_episodes
# Fetch all episodes for a series
all_episodes = get_all_episodes("tt1520211") # Walking Dead
for episode in all_episodes:
print(f"Title: {episode.title} - ({episode.imdbId})")
print(f"Plot: {episode.plot[:100]}...")
print(f"Release Date: {episode.release_date}")
print(f"Rating: {episode.rating}")
print(f"Duration: {episode.duration/60}min")
print("" + "="*50)
```
#### Company Credits
* distribution companies,
* production companies,
* sales companies,
* special effects companies,
* miscellaneous companies
You can now extract information about the companies involved in a movie or series:
```python
from imdbinfo import get_movie
movie = get_movie("tt0133093") # The Matrix
# Distribution companies
for company in movie.company_credits["distribution"]:
print(f"Distribution: {company.name} ({company.country})")
# Sales companies
for company in movie.company_credits["sales"]:
print(f"Sales: {company.name}")
# Production companies
for company in movie.company_credits["production"]:
print(f"Production: {company.name}")
# Special effects companies
for company in movie.company_credits["specialEffects"]:
print(f"Special Effects: {company.name}")
# Miscellaneous companies
for company in movie.company_credits["miscellaneous"]:
print(f"Miscellaneous: {company.name}")
```
#### Alternate titles (AKAs)
Fetch international and alternate titles for any movie or series:
```python
from imdbinfo import get_akas
akas = get_akas("tt0133093") # The Matrix
for aka in akas["akas"][:5]:
print(f"{aka.title} ({aka.country_name})")
```
#### Reviews and User Ratings
Get user reviews and ratings for any movie or series:
```python
from imdbinfo import get_reviews
reviews = get_reviews("tt0133093") # The Matrix
for review in reviews[:3]:
print(f"Rating: {review['authorRating']}/10")
print(f"Summary: {review['summary']}")
print(f"Helpful votes: {review['upVotes']} up, {review['downVotes']} down")
print(f"Spoiler: {review['spoiler']}")
print("---")
```
#### Movie Trivia and Facts
Discover interesting trivia and behind-the-scenes facts:
```python
from imdbinfo import get_trivia
trivia = get_trivia("tt0133093") # The Matrix
for fact in trivia[:3]:
print(f"Interest Score: {fact['interestScore']}")
print(f"Fact: {fact['body'][:200]}...")
print("---")
```
### Localized results in multiple languages (set globally or per request)
Added support for locales in `search_movie`, `get_movie`, `get_episodes`, `get_all_episodes`, `get_name`
```python
from imdbinfo import get_movie, search_title
# Fetch movie details in Italian
movie_it = get_movie("tt0133093", locale="it") # The Matrix
# Search for titles in Spanish (although IMDb search is mostly in all languages)
results_es = search_title("La Casa de Papel", locale="es")
```
Localized data can be set globally, dont need to pass `locale` every time in the functions:
```python
from imdbinfo import get_movie
from imdbinfo.locale import set_locale
set_locale("it") # Set default locale to Italian
movie_it = get_movie("tt0133093") # The Matrix in Italian
```
📝 For more examples see the [examples](examples/) folder.
> 💡 **Looking for a ready-to-use API based on this package? Check out [qdMovieAPI](https://github.com/tveronesi/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 niquests 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](DISCLAIMER.txt) file.
## License
imdbinfo is released under the MIT License.
See the [LICENSE](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](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) before contributing.
Raw data
{
"_id": null,
"home_page": null,
"name": "imdbinfo",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "imdb, movie, information, data",
"author": null,
"author_email": "\"@tveronesi\" <tveronesi+imdbinfo@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/7f/02/34086094cbde91c1bdb870e3727d6258b1c861ffb2fb017a61a094bafc0b/imdbinfo-0.5.4.tar.gz",
"platform": null,
"description": "[](https://pepy.tech/projects/imdbinfo)\n[](https://pypi.org/project/imdbinfo/)\n[](https://github.com/tveronesi/imdbinfo/actions/workflows/pypi-publish.yml)\n[](https://pypi.org/project/imdbinfo/)\n\n[//]: # ()\n\n# imdbinfo\n\n**Your personal gateway to IMDb data**. Search for movies, series and people and get structured information in seconds.\n\n## Features\n\n- \ud83d\udd0d **Search movies, series, miniseries and people** by name or title\n- \ud83c\udfac **Detailed movie info** including cast, crew, ratings and more\n- \ud83d\udc65 **Detailed person info** with biography, filmography and images\n- \ud83d\udcfa **TV series and miniseries** support with seasons and episodes\n- \ud83c\udf10 **Localized results** in multiple languages (set globally or per request)\n- \ud83d\udcc5 **Release dates** and **box office** information\n- \ud83c\udf0d **International titles** and **alternate titles (AKAs)** via `get_akas`\n- \ud83d\udcf8 **Poster images** and **backdrops**\n- \ud83d\udcca **Ratings** from IMDb and other sources\n- \ud83d\udcdd **User reviews and ratings** via `get_reviews`\n- \ud83c\udfad **Movie trivia and interesting facts** via `get_trivia`\n- \ud83d\uddc2\ufe0f **Full filmography** for actors, directors and writers\n- \ud83d\udcdd **Typed Pydantic models** for predictable responses\n- \u26a1 **Built-in caching** for faster repeated requests\n- \u2705 **No API keys required**\n\n## Installation\n\n```bash\npip install imdbinfo\n```\n\n## Quick Start\n\n```python\nfrom imdbinfo import search_title, get_movie, get_name, get_season_episodes, get_reviews, get_trivia\n\n# Search for a title\nresults = search_title(\"The Matrix\")\nfor movie in results.titles:\n print(f\"{movie.title} ({movie.year}) - {movie.imdb_id}\")\n\n# Get movie details\nmovie = get_movie(\"0133093\") # or 'tt0133093'\nprint(movie.title, movie.year, movie.rating)\n\n# Get movie kind:\nprint(movie.kind) # movie, tvSeries, tvMiniSeries, tvMovie, tvEpisode, tvSpecial, tvShort, short, videoGame, video, musicVideo, podcastEpisode, podcastSeries\nprint(movie.is_series()) # False\n\n# Get person details\nperson = get_name(\"nm0000206\") # or '0000206' \nprint(person.name, person.birth_date)\n```\n#### Working with Series and Episodes\n\nThe `movie` object provides helpful methods to identify its type:\n\n- `movie.is_series()` \u2014 Returns `True` if the movie is a series.\n- `movie.is_episode()` \u2014 Returns `True` if the movie is an episode.\n\nDepending on the type, you can access additional information:\n\n- For series: use `movie.info_series` to get series details.\n- For episodes: use `movie.info_episode` to get episode details.\n\n#### Example: Working with Series and Episodes\n\n```python\nfrom imdbinfo import get_movie, get_season_episodes\n\n# Fetch a TV series as a Movie object\nwalking_dead_serie = get_movie(\"tt1520211\") # Walking Dead\n\n# Check if the object is a series\nprint(walking_dead_serie.is_series()) # True\n\n# Access series-specific information\nprint(f\"Series Info: {walking_dead_serie.info_series}\")\n\n# Retrieve episodes for the series season 1\nwalking_dead_episodes = get_season_episodes(walking_dead_serie.imdb_id, season=1)\n\n# Print details for the first 3 episodes from the season 1\nfor episode_info in walking_dead_episodes[:3]:\n print(episode_info)\n\n# Fetch a single episode as a Movie object and check its type\nepisode_detail = get_movie(episode_info.imdb_id)\nprint(\"Is Episode:\", episode_detail.is_episode()) # True\n\n# Access episode-specific information: series imdbid, season and episode number ...\nprint(f\"Episode Info: {episode_detail.info_episode}\")\n```\n\n#### All episodes in a series\nYou can now retrieve all episodes in a series with a single call:\n```python\nfrom imdbinfo import get_all_episodes\n# Fetch all episodes for a series\nall_episodes = get_all_episodes(\"tt1520211\") # Walking Dead\nfor episode in all_episodes:\n print(f\"Title: {episode.title} - ({episode.imdbId})\")\n print(f\"Plot: {episode.plot[:100]}...\")\n print(f\"Release Date: {episode.release_date}\")\n print(f\"Rating: {episode.rating}\")\n print(f\"Duration: {episode.duration/60}min\")\n print(\"\" + \"=\"*50)\n```\n\n#### Company Credits\n\n* distribution companies, \n* production companies, \n* sales companies, \n* special effects companies, \n* miscellaneous companies\n\nYou can now extract information about the companies involved in a movie or series:\n\n```python\nfrom imdbinfo import get_movie\n\nmovie = get_movie(\"tt0133093\") # The Matrix\n\n# Distribution companies\nfor company in movie.company_credits[\"distribution\"]:\n print(f\"Distribution: {company.name} ({company.country})\")\n\n# Sales companies\nfor company in movie.company_credits[\"sales\"]:\n print(f\"Sales: {company.name}\")\n\n# Production companies\nfor company in movie.company_credits[\"production\"]:\n print(f\"Production: {company.name}\")\n\n# Special effects companies\nfor company in movie.company_credits[\"specialEffects\"]:\n print(f\"Special Effects: {company.name}\")\n\n# Miscellaneous companies\nfor company in movie.company_credits[\"miscellaneous\"]:\n print(f\"Miscellaneous: {company.name}\")\n```\n\n#### Alternate titles (AKAs)\nFetch international and alternate titles for any movie or series:\n```python\nfrom imdbinfo import get_akas\nakas = get_akas(\"tt0133093\") # The Matrix\nfor aka in akas[\"akas\"][:5]:\n print(f\"{aka.title} ({aka.country_name})\")\n```\n\n#### Reviews and User Ratings\nGet user reviews and ratings for any movie or series:\n```python\nfrom imdbinfo import get_reviews\nreviews = get_reviews(\"tt0133093\") # The Matrix\nfor review in reviews[:3]:\n print(f\"Rating: {review['authorRating']}/10\")\n print(f\"Summary: {review['summary']}\")\n print(f\"Helpful votes: {review['upVotes']} up, {review['downVotes']} down\")\n print(f\"Spoiler: {review['spoiler']}\")\n print(\"---\")\n```\n\n#### Movie Trivia and Facts\nDiscover interesting trivia and behind-the-scenes facts:\n```python\nfrom imdbinfo import get_trivia\ntrivia = get_trivia(\"tt0133093\") # The Matrix\nfor fact in trivia[:3]:\n print(f\"Interest Score: {fact['interestScore']}\")\n print(f\"Fact: {fact['body'][:200]}...\")\n print(\"---\")\n```\n\n### Localized results in multiple languages (set globally or per request)\n\nAdded support for locales in `search_movie`, `get_movie`, `get_episodes`, `get_all_episodes`, `get_name`\n```python\nfrom imdbinfo import get_movie, search_title\n# Fetch movie details in Italian\nmovie_it = get_movie(\"tt0133093\", locale=\"it\") # The Matrix\n\n# Search for titles in Spanish (although IMDb search is mostly in all languages)\nresults_es = search_title(\"La Casa de Papel\", locale=\"es\")\n```\n\nLocalized data can be set globally, dont need to pass `locale` every time in the functions:\n```python\nfrom imdbinfo import get_movie\nfrom imdbinfo.locale import set_locale\nset_locale(\"it\") # Set default locale to Italian\nmovie_it = get_movie(\"tt0133093\") # The Matrix in Italian\n```\n\n\n\n\ud83d\udcdd For more examples see the [examples](examples/) folder.\n\n> \ud83d\udca1 **Looking for a ready-to-use API based on this package? Check out [qdMovieAPI](https://github.com/tveronesi/qdMovieAPI) \u2014 a fast and simple way to access IMDb data via REST!**\n\n## Why choose imdbinfo?\n\n- Easy to use Python API\n- Returns clean structured data\n- Powered by niquests and lxml\n- Uses Pydantic for type safety\n- No external dependencies or API keys required\n- Ideal for quick scripts and data analysis\n\n## Disclaimer\nThis project and its authors are not affiliated in any way with IMDb Inc. or its affiliates. \nFor more information, please refer to the [DISCLAIMER](DISCLAIMER.txt) file.\n\n## License\n\nimdbinfo is released under the MIT License.\nSee the [LICENSE](LICENSE) file for details.\n\n## Contributing\n\nContributions are welcome! Open an issue or pull request on GitHub.\n\nIf you find this project useful, please consider giving it a \u2b50 on GitHub!\n\nPlease read our [Contributing Guidelines](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) before contributing.\n",
"bugtrack_url": null,
"license": null,
"summary": "A Python service for querying IMDb data",
"version": "0.5.4",
"project_urls": {
"Homepage": "https://tveronesi.github.io/imdbinfo/"
},
"split_keywords": [
"imdb",
" movie",
" information",
" data"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2cadfe7b7924948564471d8023d7f2e02fab73daaaed5375ec2f12873032e42d",
"md5": "dcc8e0baa6ff044ad3b8fb8d60ba820f",
"sha256": "7fdba5b070ba5684a7f9e474dab1c1199afc30cd7d23081950e335d1d832557b"
},
"downloads": -1,
"filename": "imdbinfo-0.5.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "dcc8e0baa6ff044ad3b8fb8d60ba820f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 17994,
"upload_time": "2025-09-11T06:30:16",
"upload_time_iso_8601": "2025-09-11T06:30:16.299043Z",
"url": "https://files.pythonhosted.org/packages/2c/ad/fe7b7924948564471d8023d7f2e02fab73daaaed5375ec2f12873032e42d/imdbinfo-0.5.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7f0234086094cbde91c1bdb870e3727d6258b1c861ffb2fb017a61a094bafc0b",
"md5": "199c3fb5119e981aa3745080a72d8d4f",
"sha256": "4fa5a9420847d802c8ab5d6be5f981b472ea150ef0f62aab8514d2a101d005a9"
},
"downloads": -1,
"filename": "imdbinfo-0.5.4.tar.gz",
"has_sig": false,
"md5_digest": "199c3fb5119e981aa3745080a72d8d4f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 613645,
"upload_time": "2025-09-11T06:30:17",
"upload_time_iso_8601": "2025-09-11T06:30:17.688118Z",
"url": "https://files.pythonhosted.org/packages/7f/02/34086094cbde91c1bdb870e3727d6258b1c861ffb2fb017a61a094bafc0b/imdbinfo-0.5.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-11 06:30:17",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "imdbinfo"
}