def download_and_uncompress_tarball(tarball_url, dataset_dir): //下载数据到本地
"""下载`tarball_url` ,并解压到本地(可选).
参数:
tarball_url: 目标url.
dataset_dir: 存储目录.
"""
filename = tarball_url.split('/')[-1] #取到文件名
filepath = os.path.join(dataset_dir, filename) #拼接文件完整路径
def _progress(count, block_size, total_size): #重写下载进度条的显示方式
sys.stdout.write('\r>> Downloading %s %.1f%%' % (
filename, float(count * block_size) / float(total_size) * 100.0))
sys.stdout.flush()
filepath, _ = urllib.request.urlretrieve(tarball_url, filepath, _progress)
print()
statinfo = os.stat(filepath) # 文件 "filepath" 信息
print('Successfully downloaded', filename, statinfo.st_size, 'bytes.') #显示下载完成
tarfile.open(filepath, 'r:gz').extractall(dataset_dir) #可选是否解压。
网友评论