projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[spiegeltv] Match hash-style URLs (Closes #4210)
[youtube-dl]
/
youtube_dl
/
extractor
/
ard.py
diff --git
a/youtube_dl/extractor/ard.py
b/youtube_dl/extractor/ard.py
index 12457f0f996db46d48823836c50e98048162c83c..630b1faa999617c79d160a636052e2acd6d5debd 100644
(file)
--- a/
youtube_dl/extractor/ard.py
+++ b/
youtube_dl/extractor/ard.py
@@
-4,16
+4,16
@@
from __future__ import unicode_literals
import re
from .common import InfoExtractor
import re
from .common import InfoExtractor
+from .generic import GenericIE
from ..utils import (
determine_ext,
ExtractorError,
qualities,
from ..utils import (
determine_ext,
ExtractorError,
qualities,
- compat_urllib_parse_urlparse,
- compat_urllib_parse,
int_or_none,
parse_duration,
unified_strdate,
xpath_text,
int_or_none,
parse_duration,
unified_strdate,
xpath_text,
+ parse_xml,
)
)
@@
-51,14
+51,16
@@
class ARDMediathekIE(InfoExtractor):
else:
video_id = m.group('video_id')
else:
video_id = m.group('video_id')
- urlp = compat_urllib_parse_urlparse(url)
- url = urlp._replace(path=compat_urllib_parse.quote(urlp.path.encode('utf-8'))).geturl()
-
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)
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)
+ if re.search(r'[\?&]rss($|[=&])', url):
+ doc = parse_xml(webpage)
+ if doc.tag == 'rss':
+ return GenericIE()._extract_rss(url, video_id, doc)
+
title = self._html_search_regex(
[r'<h1(?:\s+class="boxTopHeadline")?>(.*?)</h1>',
r'<meta name="dcterms.title" content="(.*?)"/>',
title = self._html_search_regex(
[r'<h1(?:\s+class="boxTopHeadline")?>(.*?)</h1>',
r'<meta name="dcterms.title" content="(.*?)"/>',