1
0
Fork 0
mirror of https://github.com/ytdl-org/youtube-dl.git synced 2024-11-25 11:41:52 +00:00

[sexu] Improve extraction (Closes #8782)

This commit is contained in:
Sergey M․ 2016-03-06 18:08:53 +06:00
parent c58e74062f
commit e7bd17373d

View file

@ -1,7 +1,5 @@
from __future__ import unicode_literals from __future__ import unicode_literals
import re
from .common import InfoExtractor from .common import InfoExtractor
@ -25,13 +23,18 @@ class SexuIE(InfoExtractor):
video_id = self._match_id(url) video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)
quality_arr = self._search_regex( jwvideo = self._parse_json(
r'"sources":\s*\[([^\]]+)\]', webpage, 'format string') self._search_regex(r'\.setup\(\s*({.+?})\s*\);', webpage, 'jwvideo'),
video_id)
sources = jwvideo['sources']
formats = [{ formats = [{
'url': fmt[0].replace('\\', ''), 'url': source['file'].replace('\\', ''),
'format_id': fmt[1], 'format_id': source.get('label'),
'height': int(fmt[1][:3]), 'height': self._search_regex(
} for fmt in re.findall(r'"file":"([^"]+)","label":"([^"]+)"', quality_arr)] r'^(\d+)[pP]', source.get('label', ''), 'height', default=None),
} for source in sources if source.get('file')]
self._sort_formats(formats) self._sort_formats(formats)
title = self._html_search_regex( title = self._html_search_regex(
@ -40,9 +43,7 @@ class SexuIE(InfoExtractor):
description = self._html_search_meta( description = self._html_search_meta(
'description', webpage, 'description') 'description', webpage, 'description')
thumbnail = self._html_search_regex( thumbnail = jwvideo.get('image')
r'"image":\s*"([^"]+)"',
webpage, 'thumbnail', fatal=False)
categories_str = self._html_search_meta( categories_str = self._html_search_meta(
'keywords', webpage, 'categories') 'keywords', webpage, 'categories')