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

Python 需要帮助解决和理解使用Pycharm的mongodb中的一些错误吗,python,mongodb,pycharm,pymongo,Python,Mongodb,Pycharm,Pymongo,我正在学习Python3.0,并将其与mongodb一起使用,按照我的教程的指导,尝试创建一个博客。然而,即使我完全按照视频中显示的那样做,我也没有得到正确的结果。我的python代码是: import pymongo uri="mongodb://127.0.0.1:56752" client=pymongo.MongoClient(uri) database=client["fullstack"] collections=database["student"] student=co

我正在学习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
/Users/suprateem/Documents/Pycharm/venv/bin/python/Users/suprateem/PycharmProjects/terminal_blog/app.py
回溯(最近一次呼叫最后一次):
文件“/Users/suprateem/PycharmProjects/terminal_blog/app.py”,第9行,在
对于我的学生:
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site packages/pymongo/cursor.py”,下一页第1114行
如果len(self.\u数据)或self.\u refresh():
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site packages/pymongo/cursor.py”,第1036行,在刷新中
自我(整理)
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site packages/pymongo/cursor.py”,第873行,在发送消息中
**kwargs)
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site-packages/pymongo/mongo\u-client.py”,第888行,在“发送消息”和“回复”中
服务器=拓扑。选择服务器(选择器)
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site packages/pymongo/topology.py”,第214行,在选择服务器中
地址(
文件“/Users/suprateem/Documents/Pycharm/venv/lib/python3.6/site packages/pymongo/topology.py”,第189行,在选择的服务器中
自身错误消息(选择器))
pymongo.errors.ServerSelectionTimeoutError:127.0.0.1:56752:[Errno 61]连接被拒绝
进程已完成,退出代码为1
在本教程中,将显示我们先前创建的本地数据库,即json类型的结构。 到目前为止,我在本教程中遇到的差异是:

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

  • 在关闭最后一个mongod选项卡后启动新终端时,我不得不使用SudoKillall-15终止mongod进程

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


  • 任何帮助都将不胜感激。谢谢。

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