[justin.tv] Fix page reporting (#3352)

youtube-dl -j http://www.twitch.tv/fang_i3anger still fails though.
This commit is contained in:
Philipp Hagemeister 2014-07-25 11:46:51 +02:00
parent cbf915f3f6
commit 3182f3e2dc

View file

@ -1,5 +1,6 @@
from __future__ import unicode_literals from __future__ import unicode_literals
import itertools
import json import json
import os import os
import re import re
@ -43,10 +44,11 @@ class JustinTVIE(InfoExtractor):
} }
# Return count of items, list of *valid* items # Return count of items, list of *valid* items
def _parse_page(self, url, video_id): def _parse_page(self, url, video_id, counter):
info_json = self._download_webpage(url, video_id, info_json = self._download_webpage(
'Downloading video info JSON', url, video_id,
'unable to download video info JSON') 'Downloading video info JSON on page %d' % counter,
'Unable to download video info JSON %d' % counter)
response = json.loads(info_json) response = json.loads(info_json)
if type(response) != list: if type(response) != list:
@ -138,11 +140,10 @@ class JustinTVIE(InfoExtractor):
entries = [] entries = []
offset = 0 offset = 0
limit = self._JUSTIN_PAGE_LIMIT limit = self._JUSTIN_PAGE_LIMIT
while True: for counter in itertools.count(1):
if paged:
self.report_download_page(video_id, offset)
page_url = api + ('?offset=%d&limit=%d' % (offset, limit)) page_url = api + ('?offset=%d&limit=%d' % (offset, limit))
page_count, page_info = self._parse_page(page_url, video_id) page_count, page_info = self._parse_page(
page_url, video_id, counter)
entries.extend(page_info) entries.extend(page_info)
if not paged or page_count != limit: if not paged or page_count != limit:
break break