原码
import pymongo
import datetime
client=pymongo.MongoClient() #建立连接
db=client.papers #获取数据库
collection=db.books # 获取集合
#插入文档
book={
"author":"Mike",
"text":"My first book!",
"tags":["爬虫","Python","网络"],
"date":datetime.datetime.utcnow()
}
book_id=collection.insert(book)
报错
---------------------------------------------------------------------------
ServerSelectionTimeoutError Traceback (most recent call last)
15-92caf37e51af> in <module>()
6 "date":datetime.datetime.utcnow()
7 }
----> 8 book_id=collection.insert(book)
~/anaconda3/lib/python3.6/site-packages/pymongo/collection.py in insert(self, doc_or_docs, manipulate, check_keys, continue_on_error, **kwargs)
2939 write_concern = WriteConcern(**kwargs)
2940 return self._insert(doc_or_docs, not continue_on_error,
-> 2941 check_keys, manipulate, write_concern)
2942
2943 def update(self, spec, document, upsert=False, manipulate=False,
~/anaconda3/lib/python3.6/site-packages/pymongo/collection.py in _insert(self, docs, ordered, check_keys, manipulate, write_concern, op_id, bypass_doc_val, session)
597 return self._insert_one(
598 docs, ordered, check_keys, manipulate, write_concern, op_id,
--> 599 bypass_doc_val, session)
600
601 ids = []
~/anaconda3/lib/python3.6/site-packages/pymongo/collection.py in _insert_one(self, doc, ordered, check_keys, manipulate, write_concern, op_id, bypass_doc_val, session)
577
578 result = self.__database.client._retryable_write(
--> 579 True, _insert_command, session)
580 _check_write_command_response(result)
581 else:
~/anaconda3/lib/python3.6/site-packages/pymongo/mongo_client.py in _retryable_write(self, retryable, func, session)
1099 def _retryable_write(self, retryable, func, session):
1100 """Internal retryable write helper."""
-> 1101 with self._tmp_session(session) as s:
1102 return self._retry_with_session(retryable, func, s, None)
1103
~/anaconda3/lib/python3.6/contextlib.py in __enter__(self)
79 def __enter__(self):
80 try:
---> 81 return next(self.gen)
82 except StopIteration:
83 raise RuntimeError("generator didn't yield") from None
~/anaconda3/lib/python3.6/site-packages/pymongo/mongo_client.py in _tmp_session(self, session, close)
1405 return
1406
-> 1407 s = self._ensure_session(session)
1408 if s and close:
1409 with s:
~/anaconda3/lib/python3.6/site-packages/pymongo/mongo_client.py in _ensure_session(self, session)
1392 # Don't make implied sessions causally consistent. Applications
1393 # should always opt-in.
-> 1394 return self.start_session(causal_consistency=False)
1395 except (ConfigurationError, InvalidOperation):
1396 # Sessions not supported, or multiple users authenticated.
~/anaconda3/lib/python3.6/site-packages/pymongo/mongo_client.py in start_session(self, causal_consistency)
1370
1371 # Raises ConfigurationError if sessions are not supported.
-> 1372 server_session = self._get_server_session()
1373 opts = client_session.SessionOptions(
1374 causal_consistency=causal_consistency)
~/anaconda3/lib/python3.6/site-packages/pymongo/mongo_client.py in _get_server_session(self)
1378 def _get_server_session(self):
1379 """Internal: start or resume a _ServerSession."""
-> 1380 return self._topology.get_server_session()
1381
1382 def _return_server_session(self, server_session, lock):
~/anaconda3/lib/python3.6/site-packages/pymongo/topology.py in get_server_session(self)
425 any_server_selector,
426 self._settings.server_selection_timeout,
--> 427 None)
428 elif not self._description.readable_servers:
429 self._select_servers_loop(
~/anaconda3/lib/python3.6/site-packages/pymongo/topology.py in _select_servers_loop(self, selector, timeout, address)
197 if timeout == 0 or now > end_time:
198 raise ServerSelectionTimeoutError(
--> 199 self._error_message(selector))
200
201 self._ensure_opened()
ServerSelectionTimeoutError: localhost:27017: [Errno 111] Connection refused
解决
终端下运行以下代码即可
systemctl start mongodb.service