yt-dlp/youtube_dl/extractor/ynet.py

51 lines
1.7 KiB
Python
Raw Normal View History

2014-09-27 19:11:22 +02:00
# coding: utf-8
from __future__ import unicode_literals
import re
import json
from .common import InfoExtractor
from ..compat import compat_urllib_parse_unquote_plus
2014-09-27 19:11:22 +02:00
class YnetIE(InfoExtractor):
2014-09-27 22:30:41 +02:00
_VALID_URL = r'http://(?:.+?\.)?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',
}
2014-09-27 19:11:22 +02:00
}
]
2014-09-27 19:11:22 +02:00
def _real_extract(self, url):
2014-09-29 05:15:42 +02:00
video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id)
2014-09-27 19:11:22 +02:00
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')
2014-09-27 19:11:22 +02:00
return {
'id': video_id,
2014-09-27 19:11:22 +02:00
'title': title,
'formats': self._extract_f4m_formats(f4m_url, video_id),
2014-09-27 19:11:22 +02:00
'thumbnail': self._og_search_thumbnail(webpage),
2014-11-23 20:41:03 +01:00
}