【发布时间】:2018-02-24 22:49:37
【问题描述】:
我必须做一个爬虫(我选择 python)来填充在 Symfony 项目中创建的数据库(使用学说)。 爬虫完成了,但是当我尝试填充数据库时它不起作用...
所以我在我的数据库 (mtdbdd) 中创建了一个新表测试,其中只有一个自动增量 ID 和一个标题。我尝试填写此代码:
from pymongo import MongoClient
MONGO_URI = 'mongodb://root:root@127.0.0.1:8889'
client = MongoClient(connect=False)
client = MongoClient(MONGO_URI)
db = client.mtdbdd
coll = db.test
try:
result = coll.insert_one({"title": "test"})
except coll.errors.OperationFailure as e:
print e.code
print e.details
但我有错误:
pymongo.errors.ServerSelectionTimeoutError: Got opcode 3945 but expected 1
有人可以帮助我吗?谢谢大家!
【问题讨论】:
-
如何启动mongodb? Mongodb默认端口通常是27017,所以不知道你为什么使用8889
-
将MongoClient的这两行改为
MongoClient(MONGO_URI, connect=False) -
@MrE 我使用这个端口是因为我的数据库在这个端口上,我不应该吗? (我在 Mac 上使用 Mamp)
-
@eLRuLL 我试过了,但没用...:/
-
你应该交叉检查你的用户名和密码是
root。从错误来看,客户端无法连接到mongo服务器