浏览代码

[youtube] Handle incorrectly written cache files (#3549)

Philipp Hagemeister 11 年之前
父节点
当前提交
55c49908d2
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      youtube_dl/extractor/youtube.py

+ 7 - 0
youtube_dl/extractor/youtube.py

@@ -374,6 +374,13 @@ class YoutubeIE(YoutubeBaseInfoExtractor, SubtitlesInfoExtractor):
                 return lambda s: u''.join(s[i] for i in cache_spec)
                 return lambda s: u''.join(s[i] for i in cache_spec)
             except IOError:
             except IOError:
                 pass  # No cache available
                 pass  # No cache available
+            except ValueError:
+                try:
+                    file_size = os.path.getsize(cache_fn)
+                except (OSError, IOError) as oe:
+                    file_size = str(oe)
+                self._downloader.report_warning(
+                    u'Cache %s failed (%s)' % (cache_fn, file_size))
 
 
         if player_type == 'js':
         if player_type == 'js':
             code = self._download_webpage(
             code = self._download_webpage(