aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2016-10-25 21:21:47 +0700
committerSergey M․ <dstftw@gmail.com>2016-10-25 21:21:47 +0700
commit3791d84acce7f03a50cb11b76d9a4302cf087b60 (patch)
treee5652c037f9c77ece4eac844cd92165f4dedc89f
parent9305a0dc60ea8c3b72e42e183ac09009806a0ea6 (diff)
downloadyoutube-dl-3791d84acce7f03a50cb11b76d9a4302cf087b60.zip
youtube-dl-3791d84acce7f03a50cb11b76d9a4302cf087b60.tar.gz
youtube-dl-3791d84acce7f03a50cb11b76d9a4302cf087b60.tar.bz2
[ard] Detect unavailable videos (closes #11018)
-rw-r--r--youtube_dl/extractor/ard.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/youtube_dl/extractor/ard.py b/youtube_dl/extractor/ard.py
index 3a806a6..c784f71 100644
--- a/youtube_dl/extractor/ard.py
+++ b/youtube_dl/extractor/ard.py
@@ -174,11 +174,17 @@ class ARDMediathekIE(InfoExtractor):
webpage = self._download_webpage(url, video_id)
- if '>Der gewünschte Beitrag ist nicht mehr verfügbar.<' in webpage:
- raise ExtractorError('Video %s is no longer available' % video_id, expected=True)
+ ERRORS = (
+ ('>Leider liegt eine Störung vor.', 'Video %s is unavailable'),
+ ('>Der gewünschte Beitrag ist nicht mehr verfügbar.<',
+ 'Video %s is no longer available'),
+ ('Diese Sendung ist für Jugendliche unter 12 Jahren nicht geeignet. Der Clip ist deshalb nur von 20 bis 6 Uhr verfügbar.',
+ 'This program is only suitable for those aged 12 and older. Video %s is therefore only available between 20 pm and 6 am.'),
+ )
- if 'Diese Sendung ist für Jugendliche unter 12 Jahren nicht geeignet. Der Clip ist deshalb nur von 20 bis 6 Uhr verfügbar.' in webpage:
- raise ExtractorError('This program is only suitable for those aged 12 and older. Video %s is therefore only available between 20 pm and 6 am.' % video_id, expected=True)
+ for pattern, message in ERRORS:
+ if pattern in webpage:
+ raise ExtractorError(message % video_id, expected=True)
if re.search(r'[\?&]rss($|[=&])', url):
doc = compat_etree_fromstring(webpage.encode('utf-8'))