summary refs log tree commit diff
diff options
context:
space:
mode:
authorKacper Michajłow <kasper93@gmail.com>2016-09-25 05:39:29 +0200
committerSergey M․ <dstftw@gmail.com>2016-09-27 21:58:14 +0700
commite3845525906228091fdf446f2cf2e9a20e93f59f (patch)
treed64c5ba2a75a67fe2f2197cc4f5f06fe1175e2cd
parent1a2fbe322ee2d711b474f32a7d3f331791fb1881 (diff)
downloadyoutube-dl-e3845525906228091fdf446f2cf2e9a20e93f59f.tar.gz
youtube-dl-e3845525906228091fdf446f2cf2e9a20e93f59f.tar.xz
youtube-dl-e3845525906228091fdf446f2cf2e9a20e93f59f.zip
[vk] Add support for dailymotion embeds
Fixes #10661
-rw-r--r--youtube_dl/extractor/vk.py24
1 files changed, 23 insertions, 1 deletions
diff --git a/youtube_dl/extractor/vk.py b/youtube_dl/extractor/vk.py
index cd22df25a..f26e0732c 100644
--- a/youtube_dl/extractor/vk.py
+++ b/youtube_dl/extractor/vk.py
@@ -23,8 +23,9 @@ from ..utils import (
     unified_strdate,
     urlencode_postdata,
 )
-from .vimeo import VimeoIE
+from .dailymotion import DailymotionIE
 from .pladform import PladformIE
+from .vimeo import VimeoIE
 
 
 class VKBaseIE(InfoExtractor):
@@ -211,6 +212,23 @@ class VKIE(VKBaseIE):
             },
         },
         {
+            # dailymotion embed
+            'url': 'https://vk.com/video-37468416_456239855',
+            'info_dict': {
+                'id': 'k3lz2cmXyRuJQSjGHUv',
+                'ext': 'mp4',
+                'title': 'md5:d52606645c20b0ddbb21655adaa4f56f',
+                'description': 'md5:c651358f03c56f1150b555c26d90a0fd',
+                'uploader': 'AniLibria.Tv',
+                'upload_date': '20160914',
+                'uploader_id': 'x1p5vl5',
+                'timestamp': 1473877246,
+            },
+            'params': {
+                'skip_download': True,
+            }
+        },
+        {
             # video key is extra_data not url\d+
             'url': 'http://vk.com/video-110305615_171782105',
             'md5': 'e13fcda136f99764872e739d13fac1d1',
@@ -315,6 +333,10 @@ class VKIE(VKBaseIE):
                 m_rutube.group(1).replace('\\', ''))
             return self.url_result(rutube_url)
 
+        dailymotion_urls = DailymotionIE._extract_urls(info_page)
+        if dailymotion_urls:
+            return self.url_result(dailymotion_urls[0], DailymotionIE.ie_key())
+
         m_opts = re.search(r'(?s)var\s+opts\s*=\s*({.+?});', info_page)
         if m_opts:
             m_opts_url = re.search(r"url\s*:\s*'((?!/\b)[^']+)", m_opts.group(1))