mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	[spiegel] improve info extraction
This commit is contained in:
		| @@ -4,8 +4,13 @@ from __future__ import unicode_literals | |||||||
| import re | import re | ||||||
|  |  | ||||||
| from .common import InfoExtractor | from .common import InfoExtractor | ||||||
| from ..compat import compat_urlparse |  | ||||||
| from .spiegeltv import SpiegeltvIE | from .spiegeltv import SpiegeltvIE | ||||||
|  | from ..compat import compat_urlparse | ||||||
|  | from ..utils import ( | ||||||
|  |     extract_attributes, | ||||||
|  |     unified_strdate, | ||||||
|  |     get_element_by_attribute, | ||||||
|  | ) | ||||||
|  |  | ||||||
|  |  | ||||||
| class SpiegelIE(InfoExtractor): | class SpiegelIE(InfoExtractor): | ||||||
| @@ -19,6 +24,7 @@ class SpiegelIE(InfoExtractor): | |||||||
|             'title': 'Vulkanausbruch in Ecuador: Der "Feuerschlund" ist wieder aktiv', |             'title': 'Vulkanausbruch in Ecuador: Der "Feuerschlund" ist wieder aktiv', | ||||||
|             'description': 'md5:8029d8310232196eb235d27575a8b9f4', |             'description': 'md5:8029d8310232196eb235d27575a8b9f4', | ||||||
|             'duration': 49, |             'duration': 49, | ||||||
|  |             'upload_date': '20130311', | ||||||
|         }, |         }, | ||||||
|     }, { |     }, { | ||||||
|         'url': 'http://www.spiegel.de/video/schach-wm-videoanalyse-des-fuenften-spiels-video-1309159.html', |         'url': 'http://www.spiegel.de/video/schach-wm-videoanalyse-des-fuenften-spiels-video-1309159.html', | ||||||
| @@ -29,6 +35,7 @@ class SpiegelIE(InfoExtractor): | |||||||
|             'title': 'Schach-WM in der Videoanalyse: Carlsen nutzt die Fehlgriffe des Titelverteidigers', |             'title': 'Schach-WM in der Videoanalyse: Carlsen nutzt die Fehlgriffe des Titelverteidigers', | ||||||
|             'description': 'md5:c2322b65e58f385a820c10fa03b2d088', |             'description': 'md5:c2322b65e58f385a820c10fa03b2d088', | ||||||
|             'duration': 983, |             'duration': 983, | ||||||
|  |             'upload_date': '20131115', | ||||||
|         }, |         }, | ||||||
|     }, { |     }, { | ||||||
|         'url': 'http://www.spiegel.de/video/astronaut-alexander-gerst-von-der-iss-station-beantwortet-fragen-video-1519126-embed.html', |         'url': 'http://www.spiegel.de/video/astronaut-alexander-gerst-von-der-iss-station-beantwortet-fragen-video-1519126-embed.html', | ||||||
| @@ -38,6 +45,7 @@ class SpiegelIE(InfoExtractor): | |||||||
|             'ext': 'mp4', |             'ext': 'mp4', | ||||||
|             'description': 'SPIEGEL ONLINE-Nutzer durften den deutschen Astronauten Alexander Gerst über sein Leben auf der ISS-Station befragen. Hier kommen seine Antworten auf die besten sechs Fragen.', |             'description': 'SPIEGEL ONLINE-Nutzer durften den deutschen Astronauten Alexander Gerst über sein Leben auf der ISS-Station befragen. Hier kommen seine Antworten auf die besten sechs Fragen.', | ||||||
|             'title': 'Fragen an Astronaut Alexander Gerst: "Bekommen Sie die Tageszeiten mit?"', |             'title': 'Fragen an Astronaut Alexander Gerst: "Bekommen Sie die Tageszeiten mit?"', | ||||||
|  |             'upload_date': '20140904', | ||||||
|         } |         } | ||||||
|     }, { |     }, { | ||||||
|         'url': 'http://www.spiegel.de/video/astronaut-alexander-gerst-von-der-iss-station-beantwortet-fragen-video-1519126-iframe.html', |         'url': 'http://www.spiegel.de/video/astronaut-alexander-gerst-von-der-iss-station-beantwortet-fragen-video-1519126-iframe.html', | ||||||
| @@ -52,10 +60,10 @@ class SpiegelIE(InfoExtractor): | |||||||
|         if SpiegeltvIE.suitable(handle.geturl()): |         if SpiegeltvIE.suitable(handle.geturl()): | ||||||
|             return self.url_result(handle.geturl(), 'Spiegeltv') |             return self.url_result(handle.geturl(), 'Spiegeltv') | ||||||
|  |  | ||||||
|         title = re.sub(r'\s+', ' ', self._html_search_regex( |         video_data = extract_attributes(self._search_regex(r'(<div[^>]+id="spVideoElements"[^>]+>)', webpage, 'video element', default='')) | ||||||
|             r'(?s)<(?:h1|div) class="module-title"[^>]*>(.*?)</(?:h1|div)>', |  | ||||||
|             webpage, 'title')) |         title = video_data.get('data-video-title') or get_element_by_attribute('class', 'module-title', webpage) | ||||||
|         description = self._html_search_meta('description', webpage, 'description') |         description = video_data.get('data-video-teaser') or self._html_search_meta('description', webpage, 'description') | ||||||
|  |  | ||||||
|         base_url = self._search_regex( |         base_url = self._search_regex( | ||||||
|             [r'server\s*:\s*(["\'])(?P<url>.+?)\1', r'var\s+server\s*=\s*"(?P<url>[^"]+)\"'], |             [r'server\s*:\s*(["\'])(?P<url>.+?)\1', r'var\s+server\s*=\s*"(?P<url>[^"]+)\"'], | ||||||
| @@ -87,8 +95,9 @@ class SpiegelIE(InfoExtractor): | |||||||
|         return { |         return { | ||||||
|             'id': video_id, |             'id': video_id, | ||||||
|             'title': title, |             'title': title, | ||||||
|             'description': description, |             'description': description.strip() if description else None, | ||||||
|             'duration': duration, |             'duration': duration, | ||||||
|  |             'upload_date': unified_strdate(video_data.get('data-video-date')), | ||||||
|             'formats': formats, |             'formats': formats, | ||||||
|         } |         } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Remita Amine
					Remita Amine