|
@@ -166,9 +166,17 @@ class BlipTVIE(SubtitlesInfoExtractor):
|
|
|
|
|
|
|
|
|
class BlipTVUserIE(InfoExtractor):
|
|
|
- _VALID_URL = r'(?:(?:(?:https?://)?(?:\w+\.)?blip\.tv/)|bliptvuser:)(?!api\.swf)([^/]+)/*$'
|
|
|
+ _VALID_URL = r'(?:(?:https?://(?:\w+\.)?blip\.tv/)|bliptvuser:)(?!api\.swf)([^/]+)/*$'
|
|
|
_PAGE_SIZE = 12
|
|
|
IE_NAME = 'blip.tv:user'
|
|
|
+ _TEST = {
|
|
|
+ 'url': 'http://blip.tv/actone',
|
|
|
+ 'info_dict': {
|
|
|
+ 'id': 'actone',
|
|
|
+ 'title': 'Act One: The Series',
|
|
|
+ },
|
|
|
+ 'playlist_count': 5,
|
|
|
+ }
|
|
|
|
|
|
def _real_extract(self, url):
|
|
|
mobj = re.match(self._VALID_URL, url)
|
|
@@ -179,6 +187,7 @@ class BlipTVUserIE(InfoExtractor):
|
|
|
page = self._download_webpage(url, username, 'Downloading user page')
|
|
|
mobj = re.search(r'data-users-id="([^"]+)"', page)
|
|
|
page_base = page_base % mobj.group(1)
|
|
|
+ title = self._og_search_title(page)
|
|
|
|
|
|
# Download video ids using BlipTV Ajax calls. Result size per
|
|
|
# query is limited (currently to 12 videos) so we need to query
|
|
@@ -215,4 +224,5 @@ class BlipTVUserIE(InfoExtractor):
|
|
|
|
|
|
urls = ['http://blip.tv/%s' % video_id for video_id in video_ids]
|
|
|
url_entries = [self.url_result(vurl, 'BlipTV') for vurl in urls]
|
|
|
- return [self.playlist_result(url_entries, playlist_title=username)]
|
|
|
+ return self.playlist_result(
|
|
|
+ url_entries, playlist_title=title, playlist_id=username)
|