Skip to content
/ phylm Public

Python package to aggregate useful data around films

License

Notifications You must be signed in to change notification settings

dbatten5/phylm

Repository files navigation

Phylm

Actions Status Actions Status codecov PyPI version

Film data aggregation with async support.

Motivation

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.

Installation

pip install phylm

Usage

>>> 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',
    }]
  }, {
  ...
}

Help

See the documentation for more details.

Licence

MIT

About

Python package to aggregate useful data around films

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages