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.

34 lines
1.2 KiB

  1. import re
  2. from .mtv import MTVIE, _media_xml_tag
  3. class SouthParkStudiosIE(MTVIE):
  4. IE_NAME = u'southparkstudios.com'
  5. _VALID_URL = r'https?://www\.southparkstudios\.com/clips/(?P<id>\d+)'
  6. _FEED_URL = 'http://www.southparkstudios.com/feeds/video-player/mrss'
  7. _TEST = {
  8. u'url': u'http://www.southparkstudios.com/clips/104437/bat-daded#tab=featured',
  9. u'file': u'a7bff6c2-ed00-11e0-aca6-0026b9414f30.mp4',
  10. u'info_dict': {
  11. u'title': u'Bat Daded',
  12. u'description': u'Randy disqualifies South Park by getting into a fight with Bat Dad.',
  13. },
  14. }
  15. # Overwrite MTVIE properties we don't want
  16. _TESTS = []
  17. def _get_thumbnail_url(self, uri, itemdoc):
  18. search_path = '%s/%s' % (_media_xml_tag('group'), _media_xml_tag('thumbnail'))
  19. return itemdoc.find(search_path).attrib['url']
  20. def _real_extract(self, url):
  21. mobj = re.match(self._VALID_URL, url)
  22. video_id = mobj.group('id')
  23. webpage = self._download_webpage(url, video_id)
  24. mgid = self._search_regex(r'swfobject.embedSWF\(".*?(mgid:.*?)"',
  25. webpage, u'mgid')
  26. return self._get_videos_info(mgid)