From dda620e88c68e995afcc3cd35b9d360cb42527a0 Mon Sep 17 00:00:00 2001 From: Philipp Hagemeister Date: Mon, 5 Jan 2015 18:17:03 +0100 Subject: [PATCH] [radiobremen] Make code more readable and more resilient to failures --- youtube_dl/extractor/radiobremen.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/youtube_dl/extractor/radiobremen.py b/youtube_dl/extractor/radiobremen.py index 057dc15ab..0d706312e 100644 --- a/youtube_dl/extractor/radiobremen.py +++ b/youtube_dl/extractor/radiobremen.py @@ -29,15 +29,21 @@ class RadioBremenIE(InfoExtractor): video_id = self._match_id(url) meta_url = "http://www.radiobremen.de/apps/php/mediathek/metadaten.php?id=%s" % video_id - meta_doc = self._download_webpage(meta_url, video_id, 'Downloading metadata') - title = self._html_search_regex("(?P.+)</h1>", meta_doc, "title") - description = self._html_search_regex("<p>(?P<description>.*)</p>", meta_doc, "description") - duration = parse_duration( - self._html_search_regex("Länge:</td>\s+<td>(?P<duration>[0-9]+:[0-9]+)</td>", meta_doc, "duration")) + meta_doc = self._download_webpage( + meta_url, video_id, 'Downloading metadata') + title = self._html_search_regex( + r"<h1.*>(?P<title>.+)</h1>", meta_doc, "title") + description = self._html_search_regex( + r"<p>(?P<description>.*)</p>", meta_doc, "description", fatal=False) + duration = parse_duration(self._html_search_regex( + r"Länge:</td>\s+<td>(?P<duration>[0-9]+:[0-9]+)</td>", + meta_doc, "duration", fatal=False)) - page_doc = self._download_webpage(url, video_id, 'Downloading video information') - pattern = "ardformatplayerclassic\(\'playerbereich\',\'(?P<width>[0-9]+)\',\'.*\',\'(?P<video_id>[0-9]+)\',\'(?P<secret>[0-9]+)\',\'(?P<thumbnail>.+)\',\'\'\)" - mobj = re.search(pattern, page_doc) + page_doc = self._download_webpage( + url, video_id, 'Downloading video information') + mobj = re.search( + r"ardformatplayerclassic\(\'playerbereich\',\'(?P<width>[0-9]+)\',\'.*\',\'(?P<video_id>[0-9]+)\',\'(?P<secret>[0-9]+)\',\'(?P<thumbnail>.+)\',\'\'\)", + page_doc) video_url = ( "http://dl-ondemand.radiobremen.de/mediabase/%s/%s_%s_%s.mp4" % (video_id, video_id, mobj.group("secret"), mobj.group('width')))