mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-02 17:22:31 +01:00
[indavideo] Sign download URLs
This commit is contained in:
parent
6bd499e8ca
commit
b39f42ee92
@ -2,10 +2,12 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .common import InfoExtractor
|
||||
from ..compat import compat_str
|
||||
from ..utils import (
|
||||
int_or_none,
|
||||
parse_age_limit,
|
||||
parse_iso8601,
|
||||
update_url_query,
|
||||
)
|
||||
|
||||
|
||||
@ -58,11 +60,10 @@ def _real_extract(self, url):
|
||||
if flv_url not in video_urls:
|
||||
video_urls.append(flv_url)
|
||||
|
||||
formats = [{
|
||||
'url': video_url,
|
||||
'height': int_or_none(self._search_regex(
|
||||
r'\.(\d{3,4})\.mp4(?:\?|$)', video_url, 'height', default=None)),
|
||||
} for video_url in video_urls]
|
||||
filesh = video.get('filesh')
|
||||
formats = [
|
||||
self.video_url_to_format(video_url, filesh)
|
||||
for video_url in video_urls]
|
||||
self._sort_formats(formats)
|
||||
|
||||
timestamp = video.get('date')
|
||||
@ -90,6 +91,18 @@ def _real_extract(self, url):
|
||||
'formats': formats,
|
||||
}
|
||||
|
||||
def video_url_to_format(self, video_url, filesh):
|
||||
height = int_or_none(self._search_regex(
|
||||
r'\.(\d{3,4})\.mp4(?:\?|$)', video_url, 'height', default=None))
|
||||
if height and filesh:
|
||||
token = filesh.get(compat_str(height))
|
||||
if token is not None:
|
||||
video_url = update_url_query(video_url, {'token': token})
|
||||
return {
|
||||
'url': video_url,
|
||||
'height': height,
|
||||
}
|
||||
|
||||
|
||||
class IndavideoIE(InfoExtractor):
|
||||
_VALID_URL = r'https?://(?:.+?\.)?indavideo\.hu/video/(?P<id>[^/#?]+)'
|
||||
|
Loading…
Reference in New Issue
Block a user