mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	[mtv] extract mgid extraction and query building into separate methods
This commit is contained in:
		| @@ -167,14 +167,16 @@ class MTVServicesInfoExtractor(InfoExtractor): | ||||
|             'description': description, | ||||
|         } | ||||
|  | ||||
|     def _get_feed_query(self, uri): | ||||
|         data = {'uri': uri} | ||||
|         if self._LANG: | ||||
|             data['lang'] = self._LANG | ||||
|         return compat_urllib_parse.urlencode(data) | ||||
|  | ||||
|     def _get_videos_info(self, uri): | ||||
|         video_id = self._id_from_uri(uri) | ||||
|         feed_url = self._get_feed_url(uri) | ||||
|         data = compat_urllib_parse.urlencode({'uri': uri}) | ||||
|         info_url = feed_url + '?' | ||||
|         if self._LANG: | ||||
|             info_url += 'lang=%s&' % self._LANG | ||||
|         info_url += data | ||||
|         info_url = feed_url + '?' + self._get_feed_query(uri) | ||||
|         return self._get_videos_info_from_url(info_url, video_id) | ||||
|  | ||||
|     def _get_videos_info_from_url(self, url, video_id): | ||||
| @@ -184,9 +186,7 @@ class MTVServicesInfoExtractor(InfoExtractor): | ||||
|         return self.playlist_result( | ||||
|             [self._get_video_info(item) for item in idoc.findall('.//item')]) | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
|         title = url_basename(url) | ||||
|         webpage = self._download_webpage(url, title) | ||||
|     def _extract_mgid(self, webpage): | ||||
|         try: | ||||
|             # the url can be http://media.mtvnservices.com/fb/{mgid}.swf | ||||
|             # or http://media.mtvnservices.com/{mgid} | ||||
| @@ -207,7 +207,12 @@ class MTVServicesInfoExtractor(InfoExtractor): | ||||
|                 'sm4:video:embed', webpage, 'sm4 embed', default='') | ||||
|             mgid = self._search_regex( | ||||
|                 r'embed/(mgid:.+?)["\'&?/]', sm4_embed, 'mgid') | ||||
|         return mgid | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
|         title = url_basename(url) | ||||
|         webpage = self._download_webpage(url, title) | ||||
|         mgid = self._extract_mgid(webpage) | ||||
|         videos_info = self._get_videos_info(mgid) | ||||
|         return videos_info | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 remitamine
					remitamine