首先在数据库中创建一个空集合,代码创建或者通过ROBO 3T之类的软件操作都行。
然后代码如下:
import json
import pymongo
client = pymongo.MongoClient('localhost')
db = client['database_name']
collection = db['collection_name']
f = open('filename.json', 'r')
data_list = json.load(f)
collection.insert_many(data_list)
f.close()
其中data_list是个列表,列表里面的元素是一个一个的字典,每一个字典就是一条数据。data_list大概长这个样子:
[
{
"name": "userA",
"sex": "male"
},
{
"name":"userB",
"sex": "male"
}
]
存完数据之后,该集合中就有两个字段,一个是name,一个是sex
这种方式只能将数据传到一个空集合
如果想要追加数据的话,可以使用insert_one
语句,代码如下:
import json
import pymongo
client = pymongo.MongoClient('localhost')
db = client['database_name']
collection = db['collection_name']
f = open('filename', 'r')
for line in f:
dict_line = json.loads(line)
collection.insert_one(dict_line)
f.close()
filename中的文件是一个个的字典,大概长这个样子:
{'field1': 'data1'}
{'field2': 'data2'}
{'field3': 'data3'}