aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl
diff options
context:
space:
mode:
authorNaglis Jonaitis <njonaitis@gmail.com>2014-10-02 21:42:45 +0300
committerNaglis Jonaitis <njonaitis@gmail.com>2014-10-02 21:42:45 +0300
commit8489578df42620a4e60fa233458520986b510105 (patch)
tree70ad6fd0630e3b428488371cb59776f43e138eae /youtube_dl
parent10606050bcb7cdad744fb619d466788f260d6a0a (diff)
downloadyoutube-dl-8489578df42620a4e60fa233458520986b510105.tar.xz
[generic] Support embedded Dailymotion playlists (fixes #3822)
Diffstat (limited to 'youtube_dl')
-rw-r--r--youtube_dl/extractor/generic.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py
index 14c024e48..c16da70f1 100644
--- a/youtube_dl/extractor/generic.py
+++ b/youtube_dl/extractor/generic.py
@@ -639,6 +639,16 @@ class GenericIE(InfoExtractor):
return _playlist_from_matches(
matches, lambda m: unescapeHTML(m[1]))
+ # Look for embedded Dailymotion playlist player (#3822)
+ m = re.search(
+ r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?dailymotion\.[a-z]{2,3}/widget/jukebox\?.+?)\1', webpage)
+ if m:
+ playlists = re.findall(
+ r'list\[\]=/playlist/([^/]+)/', unescapeHTML(m.group('url')))
+ if playlists:
+ return _playlist_from_matches(
+ playlists, lambda p: '//dailymotion.com/playlist/%s' % p)
+
# Look for embedded Wistia player
match = re.search(
r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:fast\.)?wistia\.net/embed/iframe/.+?)\1', webpage)