1
0
Fork 0
mirror of https://github.com/ytdl-org/youtube-dl.git synced 2024-12-22 08:47:41 +00:00

Merge pull request #730 by @JohnyMoSwag

Support for Worldstarhiphop.com
This commit is contained in:
Filippo Valsorda 2013-03-29 16:14:49 +01:00
commit 46b9d8295d
3 changed files with 67 additions and 1 deletions

2
.gitignore vendored
View file

@ -17,4 +17,4 @@ youtube-dl.tar.gz
.coverage
cover/
updates_key.pem
*.egg-info
*.egg-info

View file

@ -319,5 +319,14 @@
"description": "extremely bad day for this guy..!",
"uploader": "ljfriel2"
}
},
{
"name": "WorldStarHipHop",
"url": "http://www.worldstarhiphop.com/videos/video.php?v=wshh6a7q1ny0G34ZwuIO",
"file": "wshh6a7q1ny0G34ZwuIO.mp4",
"md5": "9d04de741161603bf7071bbf4e883186",
"info_dict": {
"title": "Video: KO Of The Week: MMA Fighter Gets Knocked Out By Swift Head Kick! "
}
}
]

View file

@ -3687,6 +3687,62 @@ class UstreamIE(InfoExtractor):
}
return [info]
class WorldStarHipHopIE(InfoExtractor):
_VALID_URL = r'http://(?:www|m)\.worldstar(?:candy|hiphop)\.com/videos/video\.php\?v=(?P<id>.*)'
IE_NAME = u'WorldStarHipHop'
def _real_extract(self, url):
_src_url = r"""(http://hw-videos.*(?:mp4|flv))"""
webpage_src = compat_urllib_request.urlopen(url).read()
webpage_src = webpage_src.decode('utf-8')
mobj = re.search(_src_url, webpage_src)
m = re.match(self._VALID_URL, url)
video_id = m.group('id')
if mobj is not None:
video_url = mobj.group()
if 'mp4' in video_url:
ext = 'mp4'
else:
ext = 'flv'
else:
self._downloader.trouble(u'ERROR: Cannot find video url for %s' % video_id)
return
_title = r"""<title>(.*)</title>"""
mobj = re.search(_title, webpage_src)
if mobj is not None:
title = mobj.group(1)
else:
title = 'World Start Hip Hop - %s' % time.ctime()
_thumbnail = r"""rel="image_src" href="(.*)" />"""
mobj = re.search(_thumbnail, webpage_src)
# Getting thumbnail and if not thumbnail sets correct title for WSHH candy video.
if mobj is not None:
thumbnail = mobj.group(1)
else:
_title = r"""candytitles.*>(.*)</span>"""
mobj = re.search(_title, webpage_src)
if mobj is not None:
title = mobj.group(1)
thumbnail = None
results = [{
'id': video_id,
'url' : video_url,
'title' : title,
'thumbnail' : thumbnail,
'ext' : ext,
}]
return results
class RBMARadioIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?rbmaradio\.com/shows/(?P<videoID>[^/]+)$'
@ -4249,6 +4305,7 @@ def gen_extractors():
GooglePlusIE(),
ArteTvIE(),
NBAIE(),
WorldStarHipHopIE(),
JustinTVIE(),
FunnyOrDieIE(),
SteamIE(),