def _handleDownload(info, path=None, duration=None, bg=False): path = path or StreamUtils.getDownloadPath(use_default=True) if bg: downloader = StreamUtils.DownloadProgressBG else: downloader = StreamUtils.DownloadProgress with downloader(line1='Starting download...') as prog: try: setOutputCallback(prog.updateCallback) _setDownloadDuration(duration) result = download(info, util.TMP_PATH) finally: setOutputCallback(None) _setDownloadDuration(duration) if not result and result.status != 'canceled': StreamUtils.showMessage(StreamUtils.T(32013), result.message, bg=bg) elif result: StreamUtils.showMessage(StreamUtils.T(32011), StreamUtils.T(32012), '', result.filepath, bg=bg) filePath = result.filepath part = result.filepath + u'.part' try: if os.path.exists(part): os.rename(part, result.filepath) except UnicodeDecodeError: part = part.encode('utf-8') if os.path.exists(part): os.rename(part, result.filepath) StreamUtils.moveFile(filePath, path, filename=info.get('filename')) return result
def _handleDownload(info,path=None,duration=None,bg=False): path = path or StreamUtils.getDownloadPath(use_default=True) if bg: downloader = StreamUtils.DownloadProgressBG else: downloader = StreamUtils.DownloadProgress with downloader(line1='Starting download...') as prog: try: setOutputCallback(prog.updateCallback) _setDownloadDuration(duration) result = download(info,util.TMP_PATH) finally: setOutputCallback(None) _setDownloadDuration(duration) if not result and result.status != 'canceled': StreamUtils.showMessage(StreamUtils.T(32013),result.message,bg=bg) elif result: StreamUtils.showMessage(StreamUtils.T(32011),StreamUtils.T(32012),'',result.filepath,bg=bg) filePath = result.filepath if os.path.exists(result.filepath + '.part'): os.rename(result.filepath + '.part',result.filepath) StreamUtils.moveFile(filePath,path,filename=info.get('filename')) return result
def handleDownload(vidinfo): """ Download the selected video in vidinfo to a path the user chooses. Displays a progress dialog and ok/error message when finished. Returns a DownloadResult object. """ path = StreamUtils.getDownloadPath() with StreamUtils.DownloadProgress() as prog: try: setOutputCallback(prog.updateCallback) result = downloadVideo(vidinfo,StreamUtils.TMP_PATH) finally: setOutputCallback(None) if not result and result.status != 'canceled': StreamUtils.showMessage(StreamUtils.T(32013),result.message) elif result: StreamUtils.showMessage(StreamUtils.T(32011),StreamUtils.T(32012),'',result.filepath) StreamUtils.moveFile(result.filepath,path) return result