Film data aggregation with async support.
When deciding which film to watch next, it can be helpful to have some key datapoints at your fingertips, for example, the genre, the cast, the Metacritic score and, perhaps most importantly, the runtime. This package provides a Phylm class to gather information from various sources for a given film.
pip install phylm
>>> from phylm import Phylm
>>> p = Phylm("The Matrix")
>>> await p.load_sources(["imdb", "mtc"])
>>> p.imdb.year
1999
>>> p.imdb.rating
8.7
>>> p.mtc.rating
73
phylm
also provides some tools around movie search results and more:
>>> from phylm.tools import search_movies, get_streaming_providers
>>> search_movies("the matrix")
[{
'title': 'The Matrix',
'kind': 'movie',
'year': 1999,
'cover_photo': 'https://some-url.com',
'imdb_id': '0133093',
}, {
'title': 'The Matrix Reloaded',
'kind': 'movie',
'year': 2003,
'cover_photo': 'https://some-url.com',
'imdb_id': '0234215',
}, {
...
>>> get_streaming_providers("0234215", regions=["gb"])
{
'gb': {
'rent': [{
'display_priority': 8,
'logo_path': '/pZgeSWpfvD59x6sY6stT5c6uc2h.jpg',
'provider_id': 130,
'provider_name': 'Sky Store',
}],
'flatrate': [{
'display_priority': 8,
'logo_path': '/ik9djlxNlex6sY6Kjsundc2h.jpg',
'provider_id': 87,
'provider_name': 'Netflix',
}]
}, {
...
}
See the documentation for more details.
MIT