about summary refs log tree commit diff
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.tar.gz
youtube-dl-3791d84acce7f03a50cb11b76d9a4302cf087b60.tar.xz
youtube-dl-3791d84acce7f03a50cb11b76d9a4302cf087b60.zip
[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 3a806a69b..c784f7172 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'))