something-something之前一直下不下来,可能是vpn的问题。不过如果下载时间过长,原来的下载链接就会失效,需要重新刷新页面,所以最好一次只下一部分。
下载完之后按照页面https://20bn.com/datasets/download给出的命令
cat 20bn-something-something-v2-?? | tar zx
提取压缩文件,但是执行解压缩命令时一直提示
gzip: stdin: not in gzip format
tar: Child returned status 13
tar: Error is not recoverable: exiting now
无法解压。
最后,按照HUAWEI DLS 解压缩数据集实录 – 小金鱼儿中的方法计算每个文件的md5值,与下载的md5值进行比较,看文件是否出错。
def md5(fname):
hash_md5 = hashlib.md5()
with open(fname, "rb") as f:
for chunk in iter(lambda: f.read(4096), b""):
hash_md5.update(chunk)
return hash_md5.hexdigest()
for x in compress_path.iterdir():
md5_file, filename = (md5_path / (x.name + ".md5")).open().read().strip().split()
md5_value = md5(str(x))
print("{} {} {} {}".format(filename, md5_file, md5_value, md5_file == md5_value))
print("OK")
比较完之后,再执行
cat 20bn-something-something-v2-?? | tar zx
成功解压