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.

41 lines
1.8 KiB

  1. # -*- coding: utf-8 -*-
  2. import re
  3. from .common import InfoExtractor
  4. from ..utils import determine_ext
  5. class SztvHuIE(InfoExtractor):
  6. _VALID_URL = r'(?:http://)?(?:(?:www\.)?sztv\.hu|www\.tvszombathely\.hu)/([^/]+)/(?P<name>.+)'
  7. _TEST = {
  8. u'url': u'http://sztv.hu/hirek/cserkeszek-nepszerusitettek-a-kornyezettudatos-eletmodot-a-savaria-teren-20130909',
  9. u'file': u'130909zoldnap.mp4',
  10. u'md5': u'0047eacedc0afd1ceeac99e69173a07e',
  11. u'info_dict': {
  12. u"title": u"Cserkészek népszerűsítették a környezettudatos életmódot a Savaria téren",
  13. u"description" : u'A zöld nap játékos ismeretterjesztő programjait a Magyar Cserkész Szövetség szervezte, akik az ország nyolc városában adják át tudásukat az érdeklődőknek. A PET...',
  14. }
  15. }
  16. def _real_extract(self, url):
  17. mobj = re.match(self._VALID_URL, url)
  18. name = mobj.group('name')
  19. webpage = self._download_webpage(url, name)
  20. # file = self._search_regex(r'var fileHtml5 = "...:(.*?)";',
  21. file = self._search_regex(r'file: "...:(.*?)",',
  22. webpage, 'video file')
  23. title = self._html_search_regex(r'<meta name="title" content="([^"]*)"',
  24. webpage, 'video title').rsplit(' - ', 2)[0]
  25. description = self._html_search_regex(r'<meta name="description" content="([^"]*)"/>',
  26. webpage, 'video description')
  27. thumbnail = self._og_search_thumbnail(webpage)
  28. video_url = 'http://media.sztv.hu/vod/' + file
  29. return {'id': name,
  30. 'url' : video_url,
  31. 'title': title,
  32. 'ext': determine_ext(video_url),
  33. 'description': description,
  34. 'thumbnail': thumbnail,
  35. }