Python library for interacting with the E2E encrypted Hulu API
Project description
pyhulu
Python library for interacting with the E2E encrypted Hulu API
Usage
First, initialize the HuluClient
class with a device code, device key, and cookies:
client = pyhulu.HuluClient(device_code, device_key, cookies)
device_code
is a three-digit string or integer (doesn't matter) denoting the device you will make requests as.
device_key
is a 16-byte AES key that corresponds to the device code you're using. This is used to decrypt the device config response.
cookies
can either be a cookie jar object or a dict of cookie key / value pairs. This is passed to the requests
library, so whatever it takes will work. Examples here: http://docs.python-requests.org/en/master/user/quickstart/#cookies.
With the initialized client
object, you can use the load_playlist()
method:
client.load_playlist(video_id)
video_id
is either a string or integer denoting the video ID to request a playlist for. This is NOT the ID in the /watch/
URL! If you view the page source of a /watch/
page, you'll find \"content_id\"
which has the actual video ID used by the API.
This method returns a dict of the playlist response, which contains stream and license URLs.
Installation
To install, clone the repository and run python setup.py install
.
To-Do
- Add to PyPI
- Add unit tests
- Add documentation
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.