def wget( url, name,console=None): """Downloads from url specified to the filename/path specified and displays progress""" print("Fetching "+name+" from "+url+"\n\n") #console update callback def progresshook(numblocks, blocksize, filesize, url=None): try: percent = min((numblocks * blocksize * 100) / filesize, 100) except: percent = 100 if numblocks != 0: MB_CONST = 1000000 # 1 MB is 1 million bytes out_str = "Progress:" + str(percent) + '%' + " of " + str(filesize / MB_CONST) + "MB\r" if (console==None): sys.stdout.write("\r"+out_str) else: if (filesize>0): console.setProgress(percent) else: console.setIndeterminate(True) bytecount=numblocks*blocksize; progstr="Downloaded: "+str(bytecount/MB_CONST)+" MB ("+str(bytecount)+" bytes) of ~200MB" console.setProgressString(progstr) CONSOLE.setProgress(0) urlStream = urllib.urlretrieve(url, name, progresshook) CONSOLE.setIndeterminate(False) CONSOLE.setProgressString(None) CONSOLE.hideProgress()