aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/southparkstudios.py
diff options
context:
space:
mode:
authorPhilipp Hagemeister <phihag@phihag.de>2013-09-16 03:32:53 +0200
committerPhilipp Hagemeister <phihag@phihag.de>2013-09-16 03:32:53 +0200
commitef66b0c6effb9d8741807abb12b059560c97c8da (patch)
tree8230663fc475477863b78884078bba918a1edea4 /youtube_dl/extractor/southparkstudios.py
parent22b50ecb2f7f9e0469d281a4c401d4a531c1cc5b (diff)
parent5a6fecc3dee35f95f3590a31e51670819db5a1fe (diff)
downloadyoutube-dl-ef66b0c6effb9d8741807abb12b059560c97c8da.tar.xz
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'youtube_dl/extractor/southparkstudios.py')
-rw-r--r--youtube_dl/extractor/southparkstudios.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/youtube_dl/extractor/southparkstudios.py b/youtube_dl/extractor/southparkstudios.py
new file mode 100644
index 000000000..a5dc754dd
--- /dev/null
+++ b/youtube_dl/extractor/southparkstudios.py
@@ -0,0 +1,34 @@
+import re
+
+from .mtv import MTVIE, _media_xml_tag
+
+
+class SouthParkStudiosIE(MTVIE):
+ IE_NAME = u'southparkstudios.com'
+ _VALID_URL = r'https?://www\.southparkstudios\.com/clips/(?P<id>\d+)'
+
+ _FEED_URL = 'http://www.southparkstudios.com/feeds/video-player/mrss'
+
+ _TEST = {
+ u'url': u'http://www.southparkstudios.com/clips/104437/bat-daded#tab=featured',
+ u'file': u'a7bff6c2-ed00-11e0-aca6-0026b9414f30.mp4',
+ u'info_dict': {
+ u'title': u'Bat Daded',
+ u'description': u'Randy disqualifies South Park by getting into a fight with Bat Dad.',
+ },
+ }
+
+ # Overwrite MTVIE properties we don't want
+ _TESTS = []
+
+ def _get_thumbnail_url(self, uri, itemdoc):
+ search_path = '%s/%s' % (_media_xml_tag('group'), _media_xml_tag('thumbnail'))
+ return itemdoc.find(search_path).attrib['url']
+
+ def _real_extract(self, url):
+ mobj = re.match(self._VALID_URL, url)
+ video_id = mobj.group('id')
+ webpage = self._download_webpage(url, video_id)
+ mgid = self._search_regex(r'swfobject.embedSWF\(".*?(mgid:.*?)"',
+ webpage, u'mgid')
+ return self._get_videos_info(mgid)