mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	[vpro] Fix extraction and add support for vpro playlists
This commit is contained in:
		| @@ -404,9 +404,8 @@ class NPORadioFragmentIE(InfoExtractor): | ||||
|         } | ||||
|  | ||||
|  | ||||
| class TegenlichtVproIE(NPOIE): | ||||
|     IE_NAME = 'tegenlicht.vpro.nl' | ||||
|     _VALID_URL = r'https?://tegenlicht\.vpro\.nl/afleveringen/.*?' | ||||
| class VPROIE(NPOIE): | ||||
|     _VALID_URL = r'https?://(?:www\.)?(?:tegenlicht\.)?vpro\.nl/(?:[^/]+/){2,}(?P<id>[^/]+)\.html' | ||||
|  | ||||
|     _TESTS = [ | ||||
|         { | ||||
| @@ -416,19 +415,35 @@ class TegenlichtVproIE(NPOIE): | ||||
|                 'id': 'VPWON_1169289', | ||||
|                 'ext': 'm4v', | ||||
|                 'title': 'Tegenlicht', | ||||
|                 'description': 'md5:d6476bceb17a8c103c76c3b708f05dd1', | ||||
|                 'description': 'md5:52cf4eefbc96fffcbdc06d024147abea', | ||||
|                 'upload_date': '20130225', | ||||
|             }, | ||||
|         }, | ||||
|         { | ||||
|             'url': 'http://www.vpro.nl/programmas/2doc/2015/sergio-herman.html', | ||||
|             'info_dict': { | ||||
|                 'id': 'sergio-herman', | ||||
|                 'title': 'Sergio Herman: Fucking perfect', | ||||
|             }, | ||||
|             'playlist_count': 2, | ||||
|         } | ||||
|     ] | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
|         name = url_basename(url) | ||||
|         webpage = self._download_webpage(url, name) | ||||
|         urn = self._html_search_meta('mediaurn', webpage) | ||||
|         info_page = self._download_json( | ||||
|             'http://rs.vpro.nl/v2/api/media/%s.json' % urn, name) | ||||
|         return self._get_info(info_page['mid']) | ||||
|         playlist_id = self._match_id(url) | ||||
|  | ||||
|         webpage = self._download_webpage(url, playlist_id) | ||||
|  | ||||
|         entries = [ | ||||
|             self.url_result('npo:%s' % video_id, 'NPO') | ||||
|             for video_id in re.findall(r'data-media-id="([^"]+)"', webpage) | ||||
|         ] | ||||
|  | ||||
|         playlist_title = self._search_regex( | ||||
|             r'<title>\s*([^>]+?)\s*-\s*Teledoc\s*-\s*VPRO\s*</title>', | ||||
|             webpage, 'playlist title', default=None) or self._og_search_title(webpage) | ||||
|  | ||||
|         return self.playlist_result(entries, playlist_id, playlist_title) | ||||
|  | ||||
|  | ||||
| class WNLIE(InfoExtractor): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․