【发布时间】:2020-09-20 08:07:41
【问题描述】:
我正在写这个查询;
end = dt.datetime.today()
start = end - dt.timedelta(7)
query = collection.find({'date' : {'$gt': start, '$lt' : end}},
{'_id' : 1, 'name' : 1, 'date_created' : 1})
docs = json.loads(dumps(query))
我在 datetime 对象上使用 pymongo 进行查询,并使用 bson 从字节转换为 json。我得到的是一个文档,它没有一个 datetime 对象,它看起来像这样;
{'_id' : 0, 'name' : 'Brand CN Homepage (Desktop)', 'date' : {'$date' : 1590537600000}}
当我尝试转换那个巨大的整数时,我得到了;
OverflowError: Python int too large to convert to C long
日期键,值应该是这样的;
{'date' : datetime.datetime(2020, 4, 3, 0, 0)}
有没有办法我可以取回一个日期时间对象而不是一个大整数?
【问题讨论】:
标签: python mongodb pymongo bson python-datetime