python读取json文件并将数据插入到mongodb的方法

  

下面是详细的Python读取JSON文件并将数据插入到MongoDB的方法攻略。

1. 在Python中读取JSON文件

要在Python中读取JSON文件,我们需要使用json模块。json模块提供了几个功能,用于将JSON数据转换为Python对象和将Python对象转换为JSON数据。

以下是读取JSON文件的示例代码:

import json

# 读取JSON文件
with open('data.json') as f:
    data = json.load(f)

# 打印读取的数据
print(data)

这个代码段使用了open()函数打开名为data.json的JSON文件,然后使用json.load()函数将文件数据加载到Python对象中。使用with语句可以在块结束时自动将文件关闭。最终我们打印出读取后的JSON数据。

2. 将数据插入MongoDB

使用Python将数据插入MongoDB需要使用pymongo库。Pymongo库是一个Python用于操作MongoDB数据库的驱动程序。

以下是将数据插入到MongoDB中的示例代码:

import pymongo
import json

# 连接MongoDB数据库
client = pymongo.MongoClient("mongodb://localhost:27017/")

# 创建或选择数据库(本示例选择名为testdb的数据库)
db = client["testdb"]

# 选择或创建集合(本示例选择名为testcoll的集合)
coll = db["testcoll"]

# 读取JSON文件
with open('data.json') as f:
    data = json.load(f)

# 插入数据到集合中
coll.insert_many(data)

# 打印插入的数据
for doc in coll.find():
    print(doc)

此代码段使用MongoDB客户端连接到本地主机的默认端口(27017),并选择一个名为testdb的数据库。我们在数据库中选择了一个名为 testcoll的集合。接着,我们读取JSON数据并使用 insert_many() 将数据批量插入到我们的集合中。最后,我们打印插入的数据。

示例

假设以下是我们的JSON数据:

[
  {
    "name": "小明",
    "age": 18,
    "phone": "13888888888"
  },
  {
    "name": "小红",
    "age": 20,
    "phone": "13666666666"
  }
]

我们可以将这些数据以JSON格式保存到一个名为data.json的文件中,然后使用上述代码段将其插入到MongoDB中。插入后,可以使用以下代码块 取回数据并打印它们。

for doc in coll.find():
    print(doc)

运行后,将会输出以下结果:

{'_id': ObjectId('...'), 'name': '小明', 'age': 18, 'phone': '13888888888'}
{'_id': ObjectId('...'), 'name': '小红', 'age': 20, 'phone': '13666666666'}

这就是Python读取JSON文件并将数据插入MongoDB的完整攻略了。

相关文章