[英]Problems importing Json file into mongodb using python
有人可以幫我解決以下問題嗎? 我已經為這個問題苦苦掙扎了好幾天……我必須使用 python 將 json 文件導入 mongodb。 我嘗試了 insert_many 和 insert_one 但出現以下代碼錯誤:
import json
import pymongo
from pymongo import MongoClient
mng_client = pymongo.MongoClient('localhost', 27017)
mng_db = mng_client['mydatabase1']
collection_credits = mng_db['credits']
with open('credits.json') as f:
file_data = json.load(f)
collection_credits.insert_many(file_data)
client.close()
錯誤信息:文檔必須是 dict 的實例,bson.son.SON...
與:
import json
import pymongo
from pymongo import MongoClient
mng_client = pymongo.MongoClient('localhost', 27017)
mng_db = mng_client['mydatabase1']
collection_credits = mng_db['credits']
with open('credits.json') as f:
file_data = json.load(f)
collection_credits.insert_one(file_data)
client.close()
錯誤:BSON 文檔太大(191071260 字節)
insert_many需要一個可迭代對象(例如一個列表), insert_one需要一個記錄。
如果您的數據如下所示,請使用 insert_many:
[ {
"a": "1"
} ]
如果您的數據如下所示,請使用 insert_one:
{
"a": "1"
}
至於其他錯誤,mongodb 文檔有 16MB 的文件大小限制。 您需要對文件進行預處理以減小文檔大小。
另請查看[mongoimport][1]
可以直接導入 JSON 數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.