You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.8 KiB
52 lines
1.8 KiB
# coding: utf-8 |
|
from __future__ import unicode_literals |
|
|
|
import re |
|
import json |
|
|
|
from .common import InfoExtractor |
|
from ..compat import compat_urllib_parse_unquote_plus |
|
|
|
|
|
class YnetIE(InfoExtractor): |
|
_VALID_URL = r'https?://(?:.+?\.)?ynet\.co\.il/(?:.+?/)?0,7340,(?P<id>L(?:-[0-9]+)+),00\.html' |
|
_TESTS = [ |
|
{ |
|
'url': 'http://hot.ynet.co.il/home/0,7340,L-11659-99244,00.html', |
|
'info_dict': { |
|
'id': 'L-11659-99244', |
|
'ext': 'flv', |
|
'title': 'איש לא יודע מאיפה באנו', |
|
'thumbnail': 're:^https?://.*\.jpg', |
|
} |
|
}, { |
|
'url': 'http://hot.ynet.co.il/home/0,7340,L-8859-84418,00.html', |
|
'info_dict': { |
|
'id': 'L-8859-84418', |
|
'ext': 'flv', |
|
'title': "צפו: הנשיקה הלוהטת של תורגי' ויוליה פלוטקין", |
|
'thumbnail': 're:^https?://.*\.jpg', |
|
} |
|
} |
|
] |
|
|
|
def _real_extract(self, url): |
|
video_id = self._match_id(url) |
|
webpage = self._download_webpage(url, video_id) |
|
|
|
content = compat_urllib_parse_unquote_plus(self._og_search_video_url(webpage)) |
|
config = json.loads(self._search_regex(r'config=({.+?})$', content, 'video config')) |
|
f4m_url = config['clip']['url'] |
|
title = self._og_search_title(webpage) |
|
m = re.search(r'ynet - HOT -- (["\']+)(?P<title>.+?)\1', title) |
|
if m: |
|
title = m.group('title') |
|
formats = self._extract_f4m_formats(f4m_url, video_id) |
|
self._sort_formats(formats) |
|
|
|
return { |
|
'id': video_id, |
|
'title': title, |
|
'formats': formats, |
|
'thumbnail': self._og_search_thumbnail(webpage), |
|
}
|
|
|