如何使用pymongo将日期时间字符串作为ISODate插入Mongodb [英] How to insert datetime string into Mongodb as ISODate using pymongo

查看:192
本文介绍了如何使用pymongo将日期时间字符串作为ISODate插入Mongodb的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将这样的日期时间字符串 "2017-10-13T10:53:53.000Z" 作为 ISODate 插入到 mongo db 中?当我插入时,我在 mongodb 中得到一个字符串:datetime.strptime("2017-10-13T10:53:53.000Z", "%Y-%m-%dT%H:%M:%S.000Z")

How to insert datetime string like this "2017-10-13T10:53:53.000Z" into mongo db as ISODate? I get a string in mongodb when I insert: datetime.strptime("2017-10-13T10:53:53.000Z", "%Y-%m-%dT%H:%M:%S.000Z")

推荐答案

这对我有用:

from pymongo.mongo_client import MongoClient
import datetime

d = datetime.datetime.strptime("2017-10-13T10:53:53.000Z", "%Y-%m-%dT%H:%M:%S.000Z")

with MongoClient() as mongo:
    db = mongo.get_database("test")
    db['dates'].insert({"date" : d})

签入mongo:

> use test
switched to db test
> db.dates.findOne()
{
    "_id" : ObjectId("589307d7cfd6c908d4b677d6"),
    "date" : ISODate("2017-10-13T10:53:53Z")
}

更新:正如评论的那样,如果您得到时间数据与格式不匹配"错误,尝试更通用的格式字符串,例如:%Y-%m-%dT%H:%M:%S.%fZ

UPDATE: As commented, if you get a "time data does not match format" error, try a more general format string such as: %Y-%m-%dT%H:%M:%S.%fZ

这篇关于如何使用pymongo将日期时间字符串作为ISODate插入Mongodb的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆