mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:20:45 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			32 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from .common import InfoExtractor
 | |
| from ..utils import make_archive_id
 | |
| 
 | |
| 
 | |
| class HTML5MediaEmbedIE(InfoExtractor):
 | |
|     _VALID_URL = False
 | |
|     IE_NAME = 'html5'
 | |
|     _WEBPAGE_TESTS = [
 | |
|         {
 | |
|             'url': 'https://html.com/media/',
 | |
|             'info_dict': {
 | |
|                 'title': 'HTML5 Media',
 | |
|                 'description': 'md5:933b2d02ceffe7a7a0f3c8326d91cc2a',
 | |
|             },
 | |
|             'playlist_count': 2
 | |
|         }
 | |
|     ]
 | |
| 
 | |
|     def _extract_from_webpage(self, url, webpage):
 | |
|         video_id, title = self._generic_id(url), self._generic_title(url)
 | |
|         entries = self._parse_html5_media_entries(url, webpage, video_id, m3u8_id='hls') or []
 | |
|         for num, entry in enumerate(entries, start=1):
 | |
|             entry.update({
 | |
|                 'id': f'{video_id}-{num}',
 | |
|                 'title': f'{title} ({num})',
 | |
|                 '_old_archive_ids': [
 | |
|                     make_archive_id('generic', f'{video_id}-{num}' if len(entries) > 1 else video_id),
 | |
|                 ],
 | |
|             })
 | |
|             self._sort_formats(entry['formats'])
 | |
|             yield entry
 | 
