mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	This commit is contained in:
		| @@ -2,7 +2,10 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from .common import InfoExtractor | ||||
| from ..compat import compat_urllib_parse_unquote | ||||
| from ..compat import ( | ||||
|     compat_str, | ||||
|     compat_urllib_parse_unquote, | ||||
| ) | ||||
| from ..utils import ( | ||||
|     determine_ext, | ||||
|     float_or_none, | ||||
| @@ -55,12 +58,33 @@ class IzleseneIE(InfoExtractor): | ||||
|     def _real_extract(self, url): | ||||
|         video_id = self._match_id(url) | ||||
|  | ||||
|         url = 'http://www.izlesene.com/video/%s' % video_id | ||||
|         webpage = self._download_webpage(url, video_id) | ||||
|         webpage = self._download_webpage('http://www.izlesene.com/video/%s' % video_id, video_id) | ||||
|  | ||||
|         video = self._parse_json( | ||||
|             self._search_regex( | ||||
|                 r'videoObj\s*=\s*({.+?})\s*;\s*\n', webpage, 'streams'), | ||||
|             video_id) | ||||
|  | ||||
|         title = video.get('videoTitle') or self._og_search_title(webpage) | ||||
|  | ||||
|         formats = [] | ||||
|         for stream in video['media']['level']: | ||||
|             source_url = stream.get('source') | ||||
|             if not source_url or not isinstance(source_url, compat_str): | ||||
|                 continue | ||||
|             ext = determine_ext(url, 'mp4') | ||||
|             quality = stream.get('value') | ||||
|             height = int_or_none(quality) | ||||
|             formats.append({ | ||||
|                 'format_id': '%sp' % quality if quality else 'sd', | ||||
|                 'url': compat_urllib_parse_unquote(source_url), | ||||
|                 'ext': ext, | ||||
|                 'height': height, | ||||
|             }) | ||||
|         self._sort_formats(formats) | ||||
|  | ||||
|         title = self._og_search_title(webpage) | ||||
|         description = self._og_search_description(webpage, default=None) | ||||
|         thumbnail = self._proto_relative_url( | ||||
|         thumbnail = video.get('posterURL') or self._proto_relative_url( | ||||
|             self._og_search_thumbnail(webpage), scheme='http:') | ||||
|  | ||||
|         uploader = self._html_search_regex( | ||||
| @@ -69,30 +93,15 @@ class IzleseneIE(InfoExtractor): | ||||
|         timestamp = parse_iso8601(self._html_search_meta( | ||||
|             'uploadDate', webpage, 'upload date')) | ||||
|  | ||||
|         duration = float_or_none(self._html_search_regex( | ||||
|             r'videoduration\s*=\s*\'([^\']+)\'', | ||||
|             webpage, 'duration', fatal=False), scale=1000) | ||||
|         duration = float_or_none(video.get('duration') or self._html_search_regex( | ||||
|             r'videoduration["\']?\s*=\s*(["\'])(?P<value>(?:(?!\1).)+)\1', | ||||
|             webpage, 'duration', fatal=False, group='value'), scale=1000) | ||||
|  | ||||
|         view_count = str_to_int(get_element_by_id('videoViewCount', webpage)) | ||||
|         comment_count = self._html_search_regex( | ||||
|             r'comment_count\s*=\s*\'([^\']+)\';', | ||||
|             webpage, 'comment_count', fatal=False) | ||||
|  | ||||
|         streams_json = self._html_search_regex( | ||||
|             r'_videoObj\s*=\s*(.+);', webpage, 'streams') | ||||
|         streams = self._parse_json(streams_json, video_id) | ||||
|  | ||||
|         formats = [] | ||||
|         for stream in streams.get('media').get('level'): | ||||
|             url = stream.get('source') | ||||
|             ext = determine_ext(url, 'mp4') | ||||
|             quality = stream.get('value') | ||||
|             formats.append({ | ||||
|                 'format_id': '%sp' % quality, | ||||
|                 'url': compat_urllib_parse_unquote(url), | ||||
|                 'ext': ext, | ||||
|             }) | ||||
|  | ||||
|         return { | ||||
|             'id': video_id, | ||||
|             'title': title, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․