Browse Source

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

youtube-dl -j http://www.twitch.tv/fang_i3anger still fails though.
Philipp Hagemeister 11 years ago
parent
commit
3182f3e2dc
1 changed files with 9 additions and 8 deletions
  1. 9 8
      youtube_dl/extractor/justintv.py

+ 9 - 8
youtube_dl/extractor/justintv.py

@@ -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):
-        info_json = self._download_webpage(url, video_id,
-                                           'Downloading video info JSON',
-                                           'unable to download video info JSON')
+    def _parse_page(self, url, video_id, counter):
+        info_json = self._download_webpage(
+            url, video_id,
+            '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:
-            if paged:
-                self.report_download_page(video_id, offset)
+        for counter in itertools.count(1):
             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