python数据存入mongodb需要账号密码的解决方法并同时解决pymongo报错 pymongo.errors.OperationFailure: Authentication failed.

正确示例如下:
import setting
import pymongo
 def __init__(self):
        # 链接数据库, 这里只说数据库登录需要帐号密码的情况
        self.client = pymongo.MongoClient('mongodb://{0}:{1}@{2}:{3}'.format(settings.MONGO_USER,settings.MONGO_PSW,settings.MONGO_HOST,settings.MONGO_PORT))
        self.db = self.client[settings.MONGO_DB]  # 获得数据库的句柄
        self.coll = self.db[settings.MONGO_COLL]  # 获得collection的句柄
    #将数据存储到mongodb
    def process_item(self, item, spider):
        postItem = dict(item)  # 把item转化成字典形式
        self.coll.insert(postItem)  # 向数据库插入一条记录
        return item  # 会在控制台输出原item数据,可以选择不写

说下解决问题的过程:

首先在网上找到关于链接的代码:


python数据存入mongodb需要账号密码的解决方法并同时解决pymongo报错 pymongo.errors.OperationFailure: Authentication failed._第1张图片

发现写上后出现了   pymongo.errors.OperationFailure: Authentication failed. 的错误

后来通过其他渠道,搜到了现在的代码,

正确的格式应该是这样的


于是改写了图中红色框线中格式,最后成功解决了问题。


你可能感兴趣的:(工具,python)