[heise] Add support for YouTube embeds
This commit is contained in:
		
							parent
							
								
									9c2a17f2ce
								
							
						
					
					
						commit
						4d8c4b46d5
					
				
					 1 changed files with 27 additions and 6 deletions
				
			
		| 
						 | 
					@ -2,6 +2,7 @@
 | 
				
			||||||
from __future__ import unicode_literals
 | 
					from __future__ import unicode_literals
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from .common import InfoExtractor
 | 
					from .common import InfoExtractor
 | 
				
			||||||
 | 
					from .youtube import YoutubeIE
 | 
				
			||||||
from ..utils import (
 | 
					from ..utils import (
 | 
				
			||||||
    determine_ext,
 | 
					    determine_ext,
 | 
				
			||||||
    int_or_none,
 | 
					    int_or_none,
 | 
				
			||||||
| 
						 | 
					@ -25,6 +26,22 @@ class HeiseIE(InfoExtractor):
 | 
				
			||||||
            'description': 'md5:c934cbfb326c669c2bcabcbe3d3fcd20',
 | 
					            'description': 'md5:c934cbfb326c669c2bcabcbe3d3fcd20',
 | 
				
			||||||
            'thumbnail': r're:^https?://.*/gallery/$',
 | 
					            'thumbnail': r're:^https?://.*/gallery/$',
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					    }, {
 | 
				
			||||||
 | 
					        # YouTube embed
 | 
				
			||||||
 | 
					        'url': 'http://www.heise.de/newsticker/meldung/Netflix-In-20-Jahren-vom-Videoverleih-zum-TV-Revolutionaer-3814130.html',
 | 
				
			||||||
 | 
					        'md5': 'e403d2b43fea8e405e88e3f8623909f1',
 | 
				
			||||||
 | 
					        'info_dict': {
 | 
				
			||||||
 | 
					            'id': '6kmWbXleKW4',
 | 
				
			||||||
 | 
					            'ext': 'mp4',
 | 
				
			||||||
 | 
					            'title': 'NEU IM SEPTEMBER | Netflix',
 | 
				
			||||||
 | 
					            'description': 'md5:2131f3c7525e540d5fd841de938bd452',
 | 
				
			||||||
 | 
					            'upload_date': '20170830',
 | 
				
			||||||
 | 
					            'uploader': 'Netflix Deutschland, Österreich und Schweiz',
 | 
				
			||||||
 | 
					            'uploader_id': 'netflixdach',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        'params': {
 | 
				
			||||||
 | 
					            'skip_download': True,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
    }, {
 | 
					    }, {
 | 
				
			||||||
        'url': 'http://www.heise.de/ct/artikel/c-t-uplink-3-3-Owncloud-Tastaturen-Peilsender-Smartphone-2403911.html',
 | 
					        'url': 'http://www.heise.de/ct/artikel/c-t-uplink-3-3-Owncloud-Tastaturen-Peilsender-Smartphone-2403911.html',
 | 
				
			||||||
        'only_matching': True,
 | 
					        'only_matching': True,
 | 
				
			||||||
| 
						 | 
					@ -40,6 +57,16 @@ class HeiseIE(InfoExtractor):
 | 
				
			||||||
        video_id = self._match_id(url)
 | 
					        video_id = self._match_id(url)
 | 
				
			||||||
        webpage = self._download_webpage(url, video_id)
 | 
					        webpage = self._download_webpage(url, video_id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        title = self._html_search_meta('fulltitle', webpage, default=None)
 | 
				
			||||||
 | 
					        if not title or title == "c't":
 | 
				
			||||||
 | 
					            title = self._search_regex(
 | 
				
			||||||
 | 
					                    r'<div[^>]+class="videoplayerjw"[^>]+data-title="([^"]+)"',
 | 
				
			||||||
 | 
					                    webpage, 'title')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        yt_urls = YoutubeIE._extract_urls(webpage)
 | 
				
			||||||
 | 
					        if yt_urls:
 | 
				
			||||||
 | 
					            return self.playlist_from_matches(yt_urls, video_id, title, ie=YoutubeIE.ie_key())
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        container_id = self._search_regex(
 | 
					        container_id = self._search_regex(
 | 
				
			||||||
            r'<div class="videoplayerjw"[^>]+data-container="([0-9]+)"',
 | 
					            r'<div class="videoplayerjw"[^>]+data-container="([0-9]+)"',
 | 
				
			||||||
            webpage, 'container ID')
 | 
					            webpage, 'container ID')
 | 
				
			||||||
| 
						 | 
					@ -47,12 +74,6 @@ class HeiseIE(InfoExtractor):
 | 
				
			||||||
            r'<div class="videoplayerjw"[^>]+data-sequenz="([0-9]+)"',
 | 
					            r'<div class="videoplayerjw"[^>]+data-sequenz="([0-9]+)"',
 | 
				
			||||||
            webpage, 'sequenz ID')
 | 
					            webpage, 'sequenz ID')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        title = self._html_search_meta('fulltitle', webpage, default=None)
 | 
					 | 
				
			||||||
        if not title or title == "c't":
 | 
					 | 
				
			||||||
            title = self._search_regex(
 | 
					 | 
				
			||||||
                r'<div[^>]+class="videoplayerjw"[^>]+data-title="([^"]+)"',
 | 
					 | 
				
			||||||
                webpage, 'title')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        doc = self._download_xml(
 | 
					        doc = self._download_xml(
 | 
				
			||||||
            'http://www.heise.de/videout/feed', video_id, query={
 | 
					            'http://www.heise.de/videout/feed', video_id, query={
 | 
				
			||||||
                'container': container_id,
 | 
					                'container': container_id,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue