使用python进行简单的mongodb搜索

使用python进行简单的mongodb搜索,python,mongodb,mongodb-query,Python,Mongodb,Mongodb Query,我有一个非常小的脚本,它试图在mongodb中找到一些文档,其中某个字段有今天的日期 对我来说,作为一个noob,我似乎有一个很好的连接-但我没有得到任何结果 想知道这是否与我的日期格式有关 这是我的剧本: import pymongo from datetime import date thedate = date.today().isoformat() client = pymongo.MongoClient("mongodb://localhost:27017/") db = clie

我有一个非常小的脚本,它试图在mongodb中找到一些文档,其中某个字段有今天的日期

对我来说,作为一个noob,我似乎有一个很好的连接-但我没有得到任何结果

想知道这是否与我的日期格式有关

这是我的剧本:

import pymongo
from datetime import date

thedate = date.today().isoformat()

client = pymongo.MongoClient("mongodb://localhost:27017/")
db = client["hotels"]
collection = db["grand_native_test"]

query = {"skaptdato": {"$gt": thedate} }

doit = collection.find(query)

print(query)
print(collection)

for x in doit:
    print(x)
结果很简单:

{'skaptdato': {'$gt': '2019-05-30'}}
Collection(Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), u'hotels'), u'grand_native_test')
我花了大约4个小时在这个非常基本的剧本上,但我一辈子都搞不懂

顺便说一句:运行mongodb 3.6.3,最新的pymongo版本和python 2.7.15

顺便说一句:db字段的格式还包括分钟和秒-->2019-05-30 13:54:00.645Z


我真希望你们中的一个聪明人能给一个可怜的家伙一个暗示

我认为问题在于数据类型。例如,DB的字段包含
ISODate
类型,并与
字符串
类型进行比较。将下一个代码用于
MongoDB

{skaptdato: {'$gt': ISODate('2019-05-30')}}
为pymongo使用下一个代码:

从日期时间导入日期时间
...
您的日期字符串='2019-05-30'
date\u string\u to\u date=datetime.strtime(您的\u date\u字符串,%Y-%m-%d)
...
{'skaptdato':{'$gt':日期\u字符串\u到\u日期}

听起来很有道理。但这只会引发这样的错误:NameError:name“ISODate”没有定义,这是我的错。mongoDD为ISODate,python为datetime