我从URL获取数据并使用以下代码将其保存为JSON文件:
import json
import urllib2
urllink=urllib2.urlopen("link/api/phpfile?auth=key&sql=select * from table").read()
print urllink
print len(urllink)
#decoding
result=json.loads(urllink)['result']
print result
with open('Fact_CMCharges.json','w') as outfile:
json.dump(result,outfile)
此代码适用于中等大小的数据。当我通过urlopen()
读取一个大的JSON文件时出现问题。
我将从URL中读取大约2800,000个数据,但是对于这样的大数据,我没有得到正确的响应。
我有想法使用rowid
部分读取JSON数据并将其保存到文件中,但我对如何将所有部分读取数据保存到单个现有文件并确保它是有效的JSON感到困惑。例如,如果原始结构是[{ some data }]
,并且我通过添加部分JSON数据来编辑本地保存的JSON文件,那么我认为它将保存为[{ some data }][{ new data}]
,但我希望表单中的所有数据{ {1}}。
我的JSON数据样本是:
[{ some data + more data }]
还有其他好方法可以解决这个问题吗?