about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2016-06-30 12:01:30 +0100
committerRemita Amine <remitamine@gmail.com>2016-06-30 12:01:30 +0100
commit329179073b93e37ab76e759d1fe96d8f984367f3 (patch)
tree0c1b734c0a21819d099b0278ac55ce6f0108c20e
parent4d86d2008eeae5d4e75d8f688a666e7b9504bbeb (diff)
downloadyoutube-dl-329179073b93e37ab76e759d1fe96d8f984367f3.tar.gz
youtube-dl-329179073b93e37ab76e759d1fe96d8f984367f3.tar.xz
youtube-dl-329179073b93e37ab76e759d1fe96d8f984367f3.zip
[generic] add generic support for twitter:player embeds
-rw-r--r--youtube_dl/extractor/extractors.py1
-rw-r--r--youtube_dl/extractor/generic.py21
-rw-r--r--youtube_dl/extractor/theatlantic.py40
3 files changed, 21 insertions, 41 deletions
diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py
index d9ffde449..80d1bbe20 100644
--- a/youtube_dl/extractor/extractors.py
+++ b/youtube_dl/extractor/extractors.py
@@ -799,7 +799,6 @@ from .teletask import TeleTaskIE
 from .telewebion import TelewebionIE
 from .testurl import TestURLIE
 from .tf1 import TF1IE
-from .theatlantic import TheAtlanticIE
 from .theintercept import TheInterceptIE
 from .theplatform import (
     ThePlatformIE,
diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py
index 712dd8a94..c2a7f9202 100644
--- a/youtube_dl/extractor/generic.py
+++ b/youtube_dl/extractor/generic.py
@@ -1245,6 +1245,22 @@ class GenericIE(InfoExtractor):
                 'uploader': 'www.hudl.com',
             },
         },
+        # twitter:player embed
+        {
+            'url': 'http://www.theatlantic.com/video/index/484130/what-do-black-holes-sound-like/',
+            'md5': 'a3e0df96369831de324f0778e126653c',
+            'info_dict': {
+                'id': '4909620399001',
+                'ext': 'mp4',
+                'title': 'What Do Black Holes Sound Like?',
+                'description': 'what do black holes sound like',
+                'upload_date': '20160524',
+                'uploader_id': '29913724001',
+                'timestamp': 1464107587,
+                'uploader': 'TheAtlantic',
+            },
+            'add_ie': ['BrightcoveLegacy'],
+        }
     ]
 
     def report_following_redirect(self, new_url):
@@ -2081,6 +2097,11 @@ class GenericIE(InfoExtractor):
                 'uploader': video_uploader,
             }
 
+        # https://dev.twitter.com/cards/types/player#On_twitter.com_via_desktop_browser
+        embed_url = self._twitter_search_player(webpage)
+        if embed_url:
+            return self.url_result(embed_url)
+
         def check_video(vurl):
             if YoutubeIE.suitable(vurl):
                 return True
diff --git a/youtube_dl/extractor/theatlantic.py b/youtube_dl/extractor/theatlantic.py
deleted file mode 100644
index df4254fea..000000000
--- a/youtube_dl/extractor/theatlantic.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# coding: utf-8
-from __future__ import unicode_literals
-
-from .common import InfoExtractor
-
-
-class TheAtlanticIE(InfoExtractor):
-    _VALID_URL = r'https?://(?:www\.)?theatlantic\.com/video/index/(?P<id>\d+)'
-    _TEST = {
-        'url': 'http://www.theatlantic.com/video/index/477918/capture-a-unified-theory-on-mental-health/',
-        'md5': '',
-        'info_dict': {
-            'id': '477918',
-            'ext': 'mp4',
-            'title': 'Are All Mental Illnesses Related?',
-            'description': 'Depression, anxiety, overeating, addiction, and all other mental disorders share a common mechanism.',
-            'timestamp': 1460490952,
-            'uploader': 'TheAtlantic',
-            'upload_date': '20160412',
-            'uploader_id': '29913724001',
-        },
-        'params': {
-            # m3u8 download
-            'skip_download': True,
-        },
-        'add_ie': ['BrightcoveLegacy'],
-    }
-
-    def _real_extract(self, url):
-        video_id = self._match_id(url)
-        webpage = self._download_webpage(url, video_id)
-        return {
-            '_type': 'url_transparent',
-            'url': self._html_search_meta('twitter:player', webpage),
-            'id': video_id,
-            'title': self._og_search_title(webpage),
-            'description': self._og_search_description(webpage),
-            'thumbnail': self._og_search_thumbnail(webpage),
-            'ie_key': 'BrightcoveLegacy',
-        }