V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
jwh199588
V2EX  ›  问与答

Python 怎么将 mongo 中得 objectId 保存到 json 文件中

  •  
  •   jwh199588 · 2019-07-19 14:01:17 +08:00 · 1480 次点击
    这是一个创建于 1955 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在有个需求,就是使用 pymongo 将 Mongo 中得数据保存到 json 文件中,做成类似 mongo 导出得功能,但是遇到 id 是 object 的时候,json_util 工具转成的 json 格式不是我想要的格式。 json_util 转成的格式是 "_id": { "$oid": "5cf5c9dd47d29157580594cb" },

    但是我想要的是 "_id":object("5cf5c9dd47d29157580594cb")

    有谁能帮我解决这个问题吗

    5 条回复    2019-07-19 15:13:16 +08:00
    kimchan
        1
    kimchan  
       2019-07-19 14:09:38 +08:00
    想在 json 中有 object() 这个方法? 估计不可能有
    Vegetable
        2
    Vegetable  
       2019-07-19 14:38:30 +08:00
    你说清楚想干什么吧,你搞成这个格式也无法读取了。
    karllynn
        3
    karllynn  
       2019-07-19 15:09:26 +08:00
    json 是可以自定义 decoder 的…看一下 dumps 的 cls 参数
    sunny352787
        4
    sunny352787  
       2019-07-19 15:12:14 +08:00
    mongodb 存的是 bson,你不如直接导出 bson 算了...
    或者是把 id 转成字符串存 json 也行
    Trim21
        5
    Trim21  
       2019-07-19 15:13:16 +08:00
    你在 json 字符串里面存成"_id":object("5cf5c9dd47d29157580594cb")的话也没法用 json 解析, 不是正确的 json.

    不如考虑一下直接转成字符串, 然后 load 的时候针对这个字段再进一步处理
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2765 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 07:11 · PVG 15:11 · LAX 23:11 · JFK 02:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.