From 4b5691179c73b33b10f0832fc9928345120f7537 Mon Sep 17 00:00:00 2001 From: Kay B <> Date: Thu, 15 Mar 2018 01:28:38 +0100 Subject: [PATCH 1/3] [sevenplus] because geo-restricted: possibly working but untested fix for #15862 --- youtube_dl/extractor/sevenplus.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/youtube_dl/extractor/sevenplus.py b/youtube_dl/extractor/sevenplus.py index 9792f820a..a4e351c77 100644 --- a/youtube_dl/extractor/sevenplus.py +++ b/youtube_dl/extractor/sevenplus.py @@ -3,6 +3,7 @@ from __future__ import unicode_literals import re +from .common import InfoExtractor from .brightcove import BrightcoveNewIE from ..utils import update_url_query @@ -64,4 +65,8 @@ class SevenPlusIE(BrightcoveNewIE): if value: info[dst_key] = value + if info['title'] is None: + webpage = self._download_webpage(url, episode_id) + info['title'] = self._search_regex(r'([^>]+)', webpage, 'title') + return info From 4db05564b431bca1e5149acd3c72776c23065cd6 Mon Sep 17 00:00:00 2001 From: Kay B <> Date: Sat, 17 Mar 2018 21:45:58 +0100 Subject: [PATCH 2/3] [sevenplus] add series title extraction --- youtube_dl/extractor/sevenplus.py | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/youtube_dl/extractor/sevenplus.py b/youtube_dl/extractor/sevenplus.py index a4e351c77..8646ff330 100644 --- a/youtube_dl/extractor/sevenplus.py +++ b/youtube_dl/extractor/sevenplus.py @@ -26,6 +26,22 @@ class SevenPlusIE(BrightcoveNewIE): 'format': 'bestvideo', 'skip_download': True, } + }, { + 'url': 'https://7plus.com.au/MDAY?episode-id=MDAY5-001', + 'info_dict': { + 'id': 'MDAY5-001', + 'ext': 'mp4', + 'title': 'S5 E1 - Invisible Killer', + 'description': 'md5:bea06aef0fe4bdefb2dce2e6af873fab', + 'uploader_id': '5303576322001', + 'upload_date': '20180219', + 'timestamp': 1519012651, + 'series': 'Air Crash Investigations', + }, + 'params': { + 'format': 'bestvideo', + 'skip_download': True, + } }, { 'url': 'https://7plus.com.au/UUUU?episode-id=AUMS43-001', 'only_matching': True, @@ -65,8 +81,7 @@ class SevenPlusIE(BrightcoveNewIE): if value: info[dst_key] = value - if info['title'] is None: - webpage = self._download_webpage(url, episode_id) - info['title'] = self._search_regex(r'([^>]+)', webpage, 'title') + webpage = self._download_webpage(url, episode_id) + info['series'] = self._search_regex(r'([^>|]+) | 7plus', webpage, 'title') return info From 815f538c6c3f0dcf7f468f5771ec3854ce05afe7 Mon Sep 17 00:00:00 2001 From: Kay B <> Date: Sun, 18 Mar 2018 21:17:39 +0100 Subject: [PATCH 3/3] [sevenplus] make season regex more flexibel and non-fatal --- youtube_dl/extractor/sevenplus.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/youtube_dl/extractor/sevenplus.py b/youtube_dl/extractor/sevenplus.py index 8646ff330..0ae8f364d 100644 --- a/youtube_dl/extractor/sevenplus.py +++ b/youtube_dl/extractor/sevenplus.py @@ -3,7 +3,6 @@ from __future__ import unicode_literals import re -from .common import InfoExtractor from .brightcove import BrightcoveNewIE from ..utils import update_url_query @@ -82,6 +81,6 @@ class SevenPlusIE(BrightcoveNewIE): info[dst_key] = value webpage = self._download_webpage(url, episode_id) - info['series'] = self._search_regex(r'([^>|]+) | 7plus', webpage, 'title') + info['series'] = self._search_regex(r'(.+?) +\| +7 ?[pP]lus ?', webpage, 'title', fatal=False) return info