diff options
| author | Sergey M․ <dstftw@gmail.com> | 2014-10-13 19:59:35 +0700 | 
|---|---|---|
| committer | Sergey M <dstftw@gmail.com> | 2014-10-13 19:59:35 +0700 | 
| commit | 1419fafd36a6ab70d769411e779db63f2b4cb1ae (patch) | |
| tree | 26bb017c89540a95fce0b0952ab556e9ca50bc4c | |
| parent | 9b36dcbd6512fb6469b037006c30cedd2cfae3fc (diff) | |
[condenast] Add support for embedded videos (Closes #3929)
| -rw-r--r-- | youtube_dl/extractor/condenast.py | 2 | ||||
| -rw-r--r-- | youtube_dl/extractor/generic.py | 7 | 
2 files changed, 9 insertions, 0 deletions
diff --git a/youtube_dl/extractor/condenast.py b/youtube_dl/extractor/condenast.py index ffbe4903b..7a7e79360 100644 --- a/youtube_dl/extractor/condenast.py +++ b/youtube_dl/extractor/condenast.py @@ -34,6 +34,8 @@ class CondeNastIE(InfoExtractor):      _VALID_URL = r'http://(video|www|player)\.(?P<site>%s)\.com/(?P<type>watch|series|video|embed)/(?P<id>[^/?#]+)' % '|'.join(_SITES.keys())      IE_DESC = 'Condé Nast media group: %s' % ', '.join(sorted(_SITES.values())) +    EMBED_URL = r'(?:https?:)?//player\.(?P<site>%s)\.com/(?P<type>embed)/.+?' % '|'.join(_SITES.keys()) +      _TEST = {          'url': 'http://video.wired.com/watch/3d-printed-speakers-lit-with-led',          'md5': '1921f713ed48aabd715691f774c451f7', diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py index dfc2ef4e7..122763a23 100644 --- a/youtube_dl/extractor/generic.py +++ b/youtube_dl/extractor/generic.py @@ -28,6 +28,7 @@ from .brightcove import BrightcoveIE  from .ooyala import OoyalaIE  from .rutv import RUTVIE  from .smotri import SmotriIE +from .condenast import CondeNastIE  class GenericIE(InfoExtractor): @@ -847,6 +848,12 @@ class GenericIE(InfoExtractor):          if mobj is not None:              return self.url_result(mobj.group('url'), 'MLB') +        mobj = re.search( +            r'<iframe[^>]+?src=(["\'])(?P<url>%s)\1' % CondeNastIE.EMBED_URL, +            webpage) +        if mobj is not None: +            return self.url_result(self._proto_relative_url(mobj.group('url'), scheme='http:'), 'CondeNast') +          def check_video(vurl):              vpath = compat_urlparse.urlparse(vurl).path              vext = determine_ext(vpath)  | 
