diff --git a/youtube-dl b/youtube-dl index 80175ed6e..f65e97fd0 100755 Binary files a/youtube-dl and b/youtube-dl differ diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py index 0fc39163e..40f96ad76 100644 --- a/youtube_dl/InfoExtractors.py +++ b/youtube_dl/InfoExtractors.py @@ -181,7 +181,7 @@ class YoutubeIE(InfoExtractor): start = "%02i:%02i:%02i,%03i" %(start/(60*60), start/60%60, start%60, start%1*1000) end = "%02i:%02i:%02i,%03i" %(end/(60*60), end/60%60, end%60, end%1*1000) caption = unescapeHTML(caption) - caption = unescapeHTML(caption) # double cycle, inentional + caption = unescapeHTML(caption) # double cycle, intentional srt += str(n) + '\n' srt += start + ' --> ' + end + '\n' srt += caption + '\n\n' @@ -2450,7 +2450,7 @@ class SoundcloudIE(InfoExtractor): try: upload_date = datetime.datetime.strptime(mobj.group(1), '%B %d, %Y %H:%M').strftime('%Y%m%d') except Exception, e: - print str(e) + self._downloader.to_stderr(str(e)) # for soundcloud, a request to a cross domain is required for cookies request = urllib2.Request('http://media.soundcloud.com/crossdomain.xml', std_headers) diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index 73590ecd6..827b58264 100644 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -396,9 +396,6 @@ def _real_main(): urllib2.install_opener(opener) socket.setdefaulttimeout(300) # 5 minutes should be enough (famous last words) - if opts.verbose: - print(u'[debug] Proxy map: ' + str(proxy_handler.proxies)) - extractors = gen_extractors() if opts.list_extractors: @@ -496,6 +493,10 @@ def _real_main(): 'prefer_free_formats': opts.prefer_free_formats, 'verbose': opts.verbose, }) + + if opts.verbose: + fd.to_screen(u'[debug] Proxy map: ' + str(proxy_handler.proxies)) + for extractor in extractors: fd.add_info_extractor(extractor) diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index ae30da53e..2853ba50f 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -83,7 +83,7 @@ class IDParser(HTMLParser.HTMLParser): HTMLParser.HTMLParser.__init__(self) def error(self, message): - print self.getpos() + print >> sys.stderr, self.getpos() if self.error_count > 10 or self.started: raise HTMLParser.HTMLParseError(message, self.getpos()) self.rawdata = '\n'.join(self.html.split('\n')[self.getpos()[0]:]) # skip one line