【发布时间】:2018-03-11 05:46:25
【问题描述】:
我遇到了以下问题。 我正在使用内存不足(1 GB)的小型机器。 我的程序从某个 url 下载一个巨大的 gzip 文件。我需要将它解压缩为 dict 我确定该文件是 json 格式。 我的问题是,在我运行以下命令后,我得到了 memory error:
data = zlib.decompress(url, 16 + zlib.MAX_WBITS).decode('utf8')
results_list.append(json.loads(data ))
现在对于小文件,这可以正常工作,但对于大文件,我得到了错误。 我的直觉告诉我应该将文件拆分成块,但是因为我期待一个 json 文件,所以我无法将块恢复为 json(因为每个部分都不是有效的 json 字符串)。
我该怎么办?
非常感谢!
【问题讨论】:
-
无需将其拆分为夹头:使用手柄而不是字符串。
-
@WillemVanOnsem 能否详细说明请在哪里办理?
-
一些身体?我完全迷失了......
-
定义“巨大”..
-
大约 200 mb。 @MarkAdler
标签: json python-3.x gzip zlib