pip install HdRezkaApi
- Usage
- Film Information
- getStream
- getSeasonStreams
- HdRezkaStream
- HdRezkaStreamSubtitles
- HdRezkaRating
- Proxy
- Cookies
- HdRezkaSearch
- HdRezkaSession
from HdRezkaApi import *
url = "https://hdrezka.ag/ __YOUR_URL__ .html"
rezka = HdRezkaApi(url)
print(rezka.name)
print(rezka.thumbnail)
print( rezka.rating.value )
print( rezka.rating.votes )
print( rezka.translators )
print( rezka.otherParts )
print( rezka.seriesInfo )
print(rezka.type)
print(rezka.type == HdRezkaTVSeries == HdRezkaTVSeries() == "tv_series")
print( rezka.getStream()('720p') ) # if movie
print( rezka.getStream('1', '1')('720p') )
print( dict(rezka.getSeasonStreams('1')) )
Attribute | Description |
---|---|
self.id |
Film ID |
self.name |
Film name |
self.description |
Film description |
self.type |
HdRezkaTVSeries or HdRezkaMovie |
self.thumbnail |
Film thumbnail URL |
self.thumbnailHQ |
Film thumbnail in high quality |
self.rating |
Film rating (HdRezkaRating) |
self.otherParts |
Other parts of this film [{Film_name: url}] |
self.translators |
Translators dict {Translator_name: translator_id} |
self.seriesInfo |
Series info by translators |
self.episodesInfo |
All seasons and episodes |
{
Translator_name: {
translator_id,
seasons: {1, 2},
episodes: {
1: {1, 2, 3},
2: {1, 2, 3}
}
}
}
[
{
season: 1, season_text,
episodes: [
{
episode: 1, episode_text,
translations: [{translator_id, translator_name}]
}
]
}
]
getStream(season, episode, translation=None, index=0)
getStream(
translation='Дубляж' or translation='56' or index=0
) ^ this is index in translators array
If type is movie then there is no need to specify season and episode.
stream = rezka.getStream() # if movie
getSeasonStreams(season, translation=None, index=0, ignore=False, progress=None)
getSeasonStreams(
translation='Дубляж' or translation='56' or index=0
) ^ this is index in translators array
def progress(current, all):
percent = round(current * 100 / all)
print(f"{percent}%: {current}/{all}", end="\r")
print( dict(rezka.getSeasonStreams(1, ignore=True, progress=progress)) )
Output example:
{'1': <HdRezkaStream(season:1, episode:1)>, '2': <HdRezkaStream(season:1, episode:2)>, ...}
If an error occurs, an attempt will be made to repeat the request again.
But if the error occurs again, then None
will be added to the final dict.
To ignore errors and retry requests until a response is received, specify the ignore=True
option.
for i, stream in rezka.getSeasonStreams('1'):
print(stream)
Attribute | Description |
---|---|
self.videos |
Dict of videos where the key is resolution and value is list of URLs |
self.name |
Film name |
self.translator_id |
Translator ID |
self.season |
Season number (None if film) |
self.episode |
Episode number (None if film) |
self.subtitles |
HdRezkaStreamSubtitles object |
HdRezkaStream(resolution) |
Call object with argument to get the URL of the video |
stream = rezka.getStream(1, 5)
print( stream('720p') )
print( stream('720') )
print( stream(1080) )
print( stream('Ultra') )
print( stream('1080p Ultra') )
print( stream.videos )
{
'360p': ['https://sambray.org/...mp4', 'https://stream.voidboost.cc/...mp4'],
'480p': ['https://sambray.org/...mp4', 'https://stream.voidboost.cc/...mp4'],
'720p': ['https://sambray.org/...mp4', 'https://stream.voidboost.cc/...mp4'],
}
Attribute | Description |
---|---|
self.subtitles |
Dict of subtitles where the key is the language code and value is the subtitle information |
self.keys |
List of available subtitle language codes |
self(id) |
Call object with argument to get URL of subtitles |
stream = rezka.getStream(1, 5)
print( stream.subtitles.subtitles ) # { 'en': {'title': 'English', 'link': 'https:/'}, ... }
print( stream.subtitles.keys ) # ['en', 'ru']
print( stream.subtitles('en') ) # 'https:/'
print( stream.subtitles('English') ) # 'https:/'
print( stream.subtitles(0) ) # 'https:/'
# ^ index
Attribute | Description |
---|---|
self.value |
Rating value (float ) |
self.votes |
Number of votes (int ) |
rezka = HdRezkaApi(url, proxy={'http': 'http://192.168.0.1:80'})
rezka = HdRezkaApi(url, cookies={"dle_user_id": user_id, "dle_password": password_hash})
If you are not sure:
rezka = HdRezkaApi(url, cookies=HdRezkaApi.make_cookies(user_id, password_hash))
Manually login:
rezka = HdRezkaApi(url)
rezka.login("your_email@gmail.com", "your_password1234")
HdRezkaSearch(origin, proxy, headers, cookies)(query)
results = HdRezkaSearch("https://hdrezka.ag/")("film name")
[
{
'title': 'Film name',
'url': 'https://hdrezka.ag/__FILM_URL.html'
}
]
HdRezkaSession allows you to log in once and not send login requests every time.
You can also specify origin to make requests to a same site. Origin in full urls will be ignored.
In the next example, the request will be made to the url: "https://rezka_mirror.com/__YOUR_URL__.html"
with HdRezkaSession("https://rezka_mirror.com/") as session:
session.login("email@gmail.com", "password")
rezka = session.get("https://hdrezka.ag/__URL_PATH__.html")
Also when specifying origin you can specify only url path.
with HdRezkaSession("https://rezka_mirror.com/") as session:
rezka = session.get("__URL_PATH__.html")
You can also not specify origin and then requests will be made to the URL you specified.
But then you won't be able to use login().
with HdRezkaSession() as session:
rezka = session.get("https://hdrezka.ag/__URL_PATH__.html")
with HdRezkaSession(cookies=cookies, headers=headers, proxy=proxy) as session:
# or inline seting up
session.cookies = cookies
session.headers = headers
session.proxy = proxy
with HdRezkaSession("https://rezka_mirror.com/") as session:
results = session.search("film name")
Donatello | |
Donation Alerts |