From 579a547e36b33a9d7671351b639cb82e6b395a92 Mon Sep 17 00:00:00 2001 From: gfabiano Date: Wed, 20 Sep 2017 21:10:28 +0200 Subject: [PATCH 1/4] [beeg] Fix extraction --- youtube_dl/extractor/beeg.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/youtube_dl/extractor/beeg.py b/youtube_dl/extractor/beeg.py index d5c5822f2..2278f2144 100644 --- a/youtube_dl/extractor/beeg.py +++ b/youtube_dl/extractor/beeg.py @@ -36,9 +36,12 @@ class BeegIE(InfoExtractor): webpage = self._download_webpage(url, video_id) cpl_url = self._search_regex( - r']+src=(["\'])(?P(?:https?:)?//static\.beeg\.com/cpl/\d+\.js.*?)\1', + r']+src=(["\'])(?P(?:https?:)?//?static(?:\.beeg\.com)?/cpl/\d+\.js.*?)\1', webpage, 'cpl', default=None, group='url') + if self._search_regex(r'(^/[^/])', cpl_url, 'cpl_url', default=None, fatal=False) is not None: + cpl_url = 'https://beeg.com%s' % (cpl_url) + beeg_version, beeg_salt = [None] * 2 if cpl_url: @@ -54,7 +57,7 @@ class BeegIE(InfoExtractor): r'beeg_salt\s*=\s*(["\'])(?P.+?)\1', cpl, 'beeg salt', default=None, group='beeg_salt') - beeg_version = beeg_version or '2000' + beeg_version = beeg_version or '2185' beeg_salt = beeg_salt or 'pmweAkq8lAYKdfWcFCUj0yoVgoPlinamH5UE1CB3H' video = self._download_json( From b5d595e399df590e3e2e7339d2dc59b8e8316390 Mon Sep 17 00:00:00 2001 From: gfabiano Date: Wed, 20 Sep 2017 22:39:58 +0200 Subject: [PATCH 2/4] [beeg] Fix regex and urljoin --- youtube_dl/extractor/beeg.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/youtube_dl/extractor/beeg.py b/youtube_dl/extractor/beeg.py index 2278f2144..d53abed24 100644 --- a/youtube_dl/extractor/beeg.py +++ b/youtube_dl/extractor/beeg.py @@ -9,6 +9,7 @@ from ..compat import ( from ..utils import ( int_or_none, parse_iso8601, + urljoin, ) @@ -36,11 +37,11 @@ class BeegIE(InfoExtractor): webpage = self._download_webpage(url, video_id) cpl_url = self._search_regex( - r']+src=(["\'])(?P(?:https?:)?//?static(?:\.beeg\.com)?/cpl/\d+\.js.*?)\1', + r']+src=(["\'])(?P(?:/static|(?:https?:)?//static\.beeg\.com)?/cpl/\d+\.js.*?)\1', webpage, 'cpl', default=None, group='url') if self._search_regex(r'(^/[^/])', cpl_url, 'cpl_url', default=None, fatal=False) is not None: - cpl_url = 'https://beeg.com%s' % (cpl_url) + cpl_url = urljoin('https://beeg.com', cpl_url) beeg_version, beeg_salt = [None] * 2 From c1e20494e430c832092cbc689072a4e5f87ccc2e Mon Sep 17 00:00:00 2001 From: gfabiano Date: Wed, 20 Sep 2017 22:52:06 +0200 Subject: [PATCH 3/4] [beeg] Fix --- youtube_dl/extractor/beeg.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/youtube_dl/extractor/beeg.py b/youtube_dl/extractor/beeg.py index d53abed24..f518b870d 100644 --- a/youtube_dl/extractor/beeg.py +++ b/youtube_dl/extractor/beeg.py @@ -37,11 +37,10 @@ class BeegIE(InfoExtractor): webpage = self._download_webpage(url, video_id) cpl_url = self._search_regex( - r']+src=(["\'])(?P(?:/static|(?:https?:)?//static\.beeg\.com)?/cpl/\d+\.js.*?)\1', + r']+src=(["\'])(?P/static/cpl/\d+\.js.*?)\1', webpage, 'cpl', default=None, group='url') - if self._search_regex(r'(^/[^/])', cpl_url, 'cpl_url', default=None, fatal=False) is not None: - cpl_url = urljoin('https://beeg.com', cpl_url) + cpl_url = urljoin(url, cpl_url) beeg_version, beeg_salt = [None] * 2 From c9cc267c5f9979c386551a85d141596e7760f96a Mon Sep 17 00:00:00 2001 From: gfabiano Date: Wed, 20 Sep 2017 23:02:00 +0200 Subject: [PATCH 4/4] [beeg] Fix --- youtube_dl/extractor/beeg.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/beeg.py b/youtube_dl/extractor/beeg.py index f518b870d..bbeae4bac 100644 --- a/youtube_dl/extractor/beeg.py +++ b/youtube_dl/extractor/beeg.py @@ -37,7 +37,7 @@ class BeegIE(InfoExtractor): webpage = self._download_webpage(url, video_id) cpl_url = self._search_regex( - r']+src=(["\'])(?P/static/cpl/\d+\.js.*?)\1', + r']+src=(["\'])(?P(?:/static|(?:https?:)?//static\.beeg\.com)/cpl/\d+\.js.*?)\1', webpage, 'cpl', default=None, group='url') cpl_url = urljoin(url, cpl_url)