需要帮助解决和理解使用Pycharm的mongodb中的一些错误吗

2024-10-03 02:37:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习python3.0,并在mongodb中使用它来尝试创建一个博客,就像我的教程中的一位指导者所说的那样。然而,即使我做了完全如视频所示,我没有得到正确的结果。我的python代码是:

import pymongo

uri="mongodb://127.0.0.1:56752"

client=pymongo.MongoClient(uri)

database=client["fullstack"]

collections=database["student"]

student=collections.find({})

for i in student:

    print(i)

我已经检查了当前端口号,它与mongod终端匹配:

2017-03-30T04:57:31.250+0530 I NETWORK  [thread1] connection accepted from 127.0.0.1:56752 #1 (1 connection now open)
2017-03-30T04:57:31.251+0530 I NETWORK  [conn1] received client metadata from 127.0.0.1:56752 conn1: { application: { name: "MongoDB Shell" }, driver: { name: "MongoDB Internal Client", version: "3.4.2" }, os: { type: "Darwin", name: "Mac OS X", architecture: "x86_64", version: "16.4.0" } }

但是,在运行代码时,它会显示一些错误,如:

/Users/suprateem/Documents/Pycharm/venv/bin/python /Users/suprateem/PycharmProjects/terminal_blog/app.py
Traceback (most recent call last):
  File "/Users/suprateem/PycharmProjects/terminal_blog/app.py", line 9, in <module>
    for i in student:
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/cursor.py", line 1114, in next
    if len(self.__data) or self._refresh():
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/cursor.py", line 1036, in _refresh
    self.__collation))
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/cursor.py", line 873, in __send_message
    **kwargs)
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/mongo_client.py", line 888, in _send_message_with_response
    server = topology.select_server(selector)
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/topology.py", line 214, in select_server
    address))
  File "/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/topology.py", line 189, in select_servers
    self._error_message(selector))
pymongo.errors.ServerSelectionTimeoutError: 127.0.0.1:56752: [Errno 61] Connection refused

Process finished with exit code 1

在本教程中,将显示我们先前创建的本地数据库,即json类型结构。 到目前为止,我在教程中遇到的不同点是:

  1. 我必须使用sudo mongod来正确运行它,而他们使用mongod

  2. 在关闭上一个mongod选项卡后,在启动新终端时,我不得不使用sudo killall-15来终止mongod进程

  3. 我使用的是比视频中更新版本的pymongo

任何帮助都是非常重要的谢谢。谢谢你。你知道吗


Tags: inpyclientvenvlibpackageslinesite
1条回答
网友
1楼 · 发布于 2024-10-03 02:37:26

只需连接到mongodb://127.0.0.1和没有端口号-MongoDB正在侦听默认端口27017。您在日志中看到的端口56752是您连接的客户机临时端口,请忽略它。你知道吗

相关问题 更多 >