Json 使用pymongo的MongoDB:根据提取插入数据

Json 使用pymongo的MongoDB:根据提取插入数据,json,mongodb,python-3.x,pymongo-3.x,Json,Mongodb,Python 3.x,Pymongo 3.x,我有一个json文件,其中包含以下类型的数据: {"_id":{"$oid":"5913ff31cb98a111ec26c4be"},"email":"abc@example.com","src":[{"acc":"ln"},{"acc":"mysp"},{"acc":"beta","login":"seller","lang":"english"}]} {"_id":{"$oid":"5913ff31cb98a111ec26c4bf"},"email":"francescoseccia@exa

我有一个json文件,其中包含以下类型的数据:

{"_id":{"$oid":"5913ff31cb98a111ec26c4be"},"email":"abc@example.com","src":[{"acc":"ln"},{"acc":"mysp"},{"acc":"beta","login":"seller","lang":"english"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4bf"},"email":"francescoseccia@example.com","src":[{"acc":"ln"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4c0"},"email":"paulcohenlaw@example.com","src":[{"acc":"ln"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4c1"},"email":"david.martinez_01@example.com","src":[{"acc":"ln"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4c2"},"email":"sodanoa@example.it","src":[{"acc":"ln"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4c3"},"email":"boyhoxiy@example.com","src":[{"acc":"ln"}]}
{"_id":{"$oid":"5913ff31cb98a111ec26c4bf"},"email":"FRancescoseccia@example.com","src":[{"acc":"ln","login":"in"},{"acc":"mysp","login":"beta"},{"acc":"db","login":"beta"}]}
这些是json值

我正在尝试使用pymongo库在MongoDB中插入值。 我想按以下方式插入值:

{
        "_id" : ObjectId("592402db50409d7e8d94fae4"),
        "email" : "abc@example.com",
        "src" : [
                {
                        "acc" : "ln"
                },
                {
                        "acc" : "mysp"
                },
                {
                        "acc" : "beta"
                }
        ],
        "login" : [
                "seller"
        ],
        "lang" : [
                "english"
        ]
}
{
        "_id" : ObjectId("592402eb50409d7e8d94fae5"),
        "email" : "francescoseccia@example.com",
        "src" : [
                {
                        "acc" : "ln"
                }
        ]
}
{
        "_id" : ObjectId("592402f850409d7e8d94fae6"),
        "email" : "paulcohenlaw@example.com",
        "src" : [
                {
                        "acc" : "ln"
                }
        ]
}
{
        "_id" : ObjectId("5924030550409d7e8d94fae7"),
        "email" : "david.martinez_01@example.com",
        "src" : [
                {
                        "acc" : "ln"
                }
        ]
}
{
        "_id" : ObjectId("5924031150409d7e8d94fae8"),
        "email" : "sodanoa@example.it",
        "src" : [
                {
                        "acc" : "ln"
                }
        ]
}
{
        "_id" : ObjectId("5924031c50409d7e8d94fae9"),
        "email" : "boyhoxiy@example.com",
        "src" : [
                {
                        "acc" : "ln"
                }
        ]
}
{
        "_id" : ObjectId("5924032850409d7e8d94faea"),
        "email" : "FRancescoseccia@example.com",
        "src" : [
                {
                        "acc" : "ln"
                },
                {
                        "acc" : "mysp"
                },
                {
                        "acc" : "db"
                }
        ],
        "login" : [
                "in",
                "beta"
        ]
}
只需在src`集合中保留
acc'。如果存在任何其他值,则该值必须位于单独的集合之外。

请告诉我谁可以使用pymongo来做这件事。

为什么不将
src
制作成一个嵌入式文档,其中
acc
是一个数组字段?我想这会让你的生活更轻松,除非这个领域是动态的,这是一个坏主意。@S.M.Styvane抱歉,我的朋友,我没有理解你的意思。你能告诉我更多关于它的信息吗?我的意思是,你应该把你的文档结构改成:
{“email”:boyhoxiy@example.com“,“src”:[“ln”]}