mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	[footyroom] Fix extraction and update _TESTS (closes #10810)
This commit is contained in:
		| @@ -2,25 +2,27 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from .common import InfoExtractor | ||||
| from .streamable import StreamableIE | ||||
|  | ||||
|  | ||||
| class FootyRoomIE(InfoExtractor): | ||||
|     _VALID_URL = r'https?://footyroom\.com/(?P<id>[^/]+)' | ||||
|     _VALID_URL = r'https?://footyroom\.com/matches/(?P<id>\d+)' | ||||
|     _TESTS = [{ | ||||
|         'url': 'http://footyroom.com/schalke-04-0-2-real-madrid-2015-02/', | ||||
|         'url': 'http://footyroom.com/matches/79922154/hull-city-vs-chelsea/review', | ||||
|         'info_dict': { | ||||
|             'id': 'schalke-04-0-2-real-madrid-2015-02', | ||||
|             'title': 'Schalke 04 0 – 2 Real Madrid', | ||||
|             'id': '79922154', | ||||
|             'title': 'VIDEO Hull City 0 - 2 Chelsea', | ||||
|         }, | ||||
|         'playlist_count': 3, | ||||
|         'skip': 'Video for this match is not available', | ||||
|         'playlist_count': 2, | ||||
|         'add_ie': [StreamableIE.ie_key()], | ||||
|     }, { | ||||
|         'url': 'http://footyroom.com/georgia-0-2-germany-2015-03/', | ||||
|         'url': 'http://footyroom.com/matches/75817984/georgia-vs-germany/review', | ||||
|         'info_dict': { | ||||
|             'id': 'georgia-0-2-germany-2015-03', | ||||
|             'title': 'Georgia 0 – 2 Germany', | ||||
|             'id': '75817984', | ||||
|             'title': 'VIDEO Georgia 0 - 2 Germany', | ||||
|         }, | ||||
|         'playlist_count': 1, | ||||
|         'add_ie': ['Playwire'] | ||||
|     }] | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
| @@ -28,9 +30,8 @@ class FootyRoomIE(InfoExtractor): | ||||
|  | ||||
|         webpage = self._download_webpage(url, playlist_id) | ||||
|  | ||||
|         playlist = self._parse_json( | ||||
|             self._search_regex( | ||||
|                 r'VideoSelector\.load\((\[.+?\])\);', webpage, 'video selector'), | ||||
|         playlist = self._parse_json(self._search_regex( | ||||
|             r'DataStore\.media\s*=\s*([^;]+)', webpage, 'media data'), | ||||
|             playlist_id) | ||||
|  | ||||
|         playlist_title = self._og_search_title(webpage) | ||||
| @@ -40,11 +41,16 @@ class FootyRoomIE(InfoExtractor): | ||||
|             payload = video.get('payload') | ||||
|             if not payload: | ||||
|                 continue | ||||
|             playwire_url = self._search_regex( | ||||
|             playwire_url = self._html_search_regex( | ||||
|                 r'data-config="([^"]+)"', payload, | ||||
|                 'playwire url', default=None) | ||||
|             if playwire_url: | ||||
|                 entries.append(self.url_result(self._proto_relative_url( | ||||
|                     playwire_url, 'http:'), 'Playwire')) | ||||
|  | ||||
|             streamable_url = StreamableIE._extract_url(payload) | ||||
|             if streamable_url: | ||||
|                 entries.append(self.url_result( | ||||
|                     streamable_url, StreamableIE.ie_key())) | ||||
|  | ||||
|         return self.playlist_result(entries, playlist_id, playlist_title) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Yen Chi Hsuan
					Yen Chi Hsuan