1
我有这种格式的一些信息的JSON文件:如何将json文件加载到mongoDB中?
{ "_id" : ObjectId("xxx"), "date_time" : ISODate("2014-06-11T19:16:45Z"), "name" : "AAA", "phone_no" : "111", "address" : "BBB", "categories" : "CCC" }
{ "_id" : ObjectId("yyy"), "date_time" : ISODate("2014-06-11T19:16:44Z"), "name" : "EEE", "phone_no" : "222", "address" : "FFF", "categories" : "GGG" }
{ "_id" : ObjectId("zzz"), "date_time" : ISODate("2014-06-11T19:16:46Z"), "name" : "HHH", "phone_no" : "333", "address" : "III", "categories" : "JJJ" }
我正在使用的代码是这样的:
db = pymongo.MongoClient().test
path ='/home/files'
for f in listdir(path):
filepath = path+'/'+f
data = []
for line in open(filepath):
try:
data.append(json.loads(line))
except:
pass
db.temp.insert(data)
这将导致一个错误,说明空批量写是不可能的。基本上,json.loads(line)
从来没有工作。这是问题的JSON文件的格式?应该用其他方式声明变量“数据”吗?
如何这个文件加载到MongoDB的?
JSON犯规知道跆拳道的对象ID是或一个ISODate ...它只能处理简单的类型......你可以尝试用'yaml'加载数据如果你定义序列化规则对那些clases ...或者你可以只使用简单的字符串行 – 2015-01-26 20:26:49
你只是想挽回在JSON文件中的记录来蒙戈?为什么不使用mongoimport? http://docs.mongodb.org/manual/reference/program/mongoimport/ – Tony 2015-01-26 21:06:24