bson.errors.InvalidDocument: documents must have only string keys, key was <class 'type'>

最近在弄MongoDB查询数据,试着用python实现查询数据,不容易上手,在这里总结一下报的错误

from pymongo import MongoClient

url= 'mongodb://user:password@ip:port'

class PyMongoDemo(object):
    def __init__(self):
        uri = url
        self.conn = MongoClient(uri)  # 创建数据库连接
        self.db = self.conn.dongpin_db  # 数据库名
        self.my_set = self.db.mall_order  # 表名


    def getData(self):

        # 查找本地址范围内的一些数据
        for data in self.my_set.find({'location':{ '$near':{'$geometry': { "type": "Point",  'coordinates': [116.407023,40.19442399] },'$minDistance': 10,'$maxDistance': 50}}},{"location": 1}):
            print(data)


if __name__ == "__main__":
    mongo = PyMongoDemo()

    mongo.getData()

在这里报了一个上述的错误,原因是find()里面的所有str字符串都需要加上'' ",遗落了一个 type ,直接报错,我还在傻了吧唧的配置数据库相关东西....

 

posted @ 2020-11-30 17:57  Mr·Li程序员  阅读(1600)  评论(0编辑  收藏  举报