mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	[mailru] Add support for new mail.ru URL format (Closes #3024)
This commit is contained in:
		| @@ -9,29 +9,48 @@ from .common import InfoExtractor | ||||
| class MailRuIE(InfoExtractor): | ||||
|     IE_NAME = 'mailru' | ||||
|     IE_DESC = 'Видео@Mail.Ru' | ||||
|     _VALID_URL = r'http://(?:www\.)?my\.mail\.ru/video/.*#video=/?(?P<id>[^/]+/[^/]+/[^/]+/\d+)' | ||||
|     _VALID_URL = r'http://(?:www\.)?my\.mail\.ru/(?:video/.*#video=/?(?P<idv1>(?:[^/]+/){3}\d+)|(?:(?P<idv2prefix>(?:[^/]+/){2})video/(?P<idv2suffix>[^/]+/\d+))\.html)' | ||||
|  | ||||
|     _TEST = { | ||||
|         'url': 'http://my.mail.ru/video/top#video=/mail/sonypicturesrus/75/76', | ||||
|         'md5': 'dea205f03120046894db4ebb6159879a', | ||||
|         'info_dict': { | ||||
|             'id': '46301138', | ||||
|             'ext': 'mp4', | ||||
|             'title': 'Новый Человек-Паук. Высокое напряжение. Восстание Электро', | ||||
|             'timestamp': 1393232740, | ||||
|             'upload_date': '20140224', | ||||
|             'uploader': 'sonypicturesrus', | ||||
|             'uploader_id': 'sonypicturesrus@mail.ru', | ||||
|             'duration': 184, | ||||
|         } | ||||
|     } | ||||
|     _TESTS = [ | ||||
|         { | ||||
|             'url': 'http://my.mail.ru/video/top#video=/mail/sonypicturesrus/75/76', | ||||
|             'md5': 'dea205f03120046894db4ebb6159879a', | ||||
|             'info_dict': { | ||||
|                 'id': '46301138', | ||||
|                 'ext': 'mp4', | ||||
|                 'title': 'Новый Человек-Паук. Высокое напряжение. Восстание Электро', | ||||
|                 'timestamp': 1393232740, | ||||
|                 'upload_date': '20140224', | ||||
|                 'uploader': 'sonypicturesrus', | ||||
|                 'uploader_id': 'sonypicturesrus@mail.ru', | ||||
|                 'duration': 184, | ||||
|             }, | ||||
|         }, | ||||
|         { | ||||
|             'url': 'http://my.mail.ru/corp/hitech/video/news_hi-tech_mail_ru/1263.html', | ||||
|             'md5': '00a91a58c3402204dcced523777b475f', | ||||
|             'info_dict': { | ||||
|                 'id': '46843144', | ||||
|                 'ext': 'mp4', | ||||
|                 'title': 'Samsung Galaxy S5 Hammer Smash Fail Battery Explosion', | ||||
|                 'timestamp': 1397217632, | ||||
|                 'upload_date': '20140411', | ||||
|                 'uploader': 'hitech', | ||||
|                 'uploader_id': 'hitech@corp.mail.ru', | ||||
|                 'duration': 245, | ||||
|             }, | ||||
|         }, | ||||
|     ] | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
|         mobj = re.match(self._VALID_URL, url) | ||||
|         video_id = mobj.group('id') | ||||
|         video_id = mobj.group('idv1') | ||||
|  | ||||
|         if not video_id: | ||||
|             video_id = mobj.group('idv2prefix') + mobj.group('idv2suffix') | ||||
|  | ||||
|         video_data = self._download_json( | ||||
|             'http://videoapi.my.mail.ru/videos/%s.json?new=1' % video_id, video_id, 'Downloading video JSON') | ||||
|             'http://api.video.mail.ru/videos/%s.json?new=1' % video_id, video_id, 'Downloading video JSON') | ||||
|  | ||||
|         author = video_data['author'] | ||||
|         uploader = author['name'] | ||||
| @@ -40,6 +59,8 @@ class MailRuIE(InfoExtractor): | ||||
|         movie = video_data['movie'] | ||||
|         content_id = str(movie['contentId']) | ||||
|         title = movie['title'] | ||||
|         if title.endswith('.mp4'): | ||||
|             title = title[:-4] | ||||
|         thumbnail = movie['poster'] | ||||
|         duration = movie['duration'] | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․