
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
다른 질문에 달린 답변대로 코드를 수정했는데도 아래랑 같이 나오고 DB에 저장이 안돼요!
from pymongo import MongoClient
import certifi
ca = certifi.where()
client = MongoClient('mongodb+srv://sparta:test@cluster0.wnnzi40.mongodb.net/?retryWrites=true&w=majority') # 내 mongoDB url
db = client.dbsparta
# pymongo를 사용하는 방법
doc = {
'name':'bob',
'age': 27
}
db.users.insert_one(doc) # db에 딕셔너리 넣기
Traceback (most recent call last):
File "c:\Users\Y\Desktop\sparta\frontend\week3\python\dbprac.py", line 15, in <module>
db.users.insert_one(doc) # db에 딕셔너리 넣기
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\collection.py", line 628, in insert_one
self._insert_one(
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\collection.py", line 569, in _insert_one self.__database.client._retryable_write(acknowledged, _insert_command, session)
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\mongo_client.py", line 1475, in _retryable_write
with self._tmp_session(session) as s:
File "C:\Users\Y\AppData\Local\Programs\Python\Python39\lib\contextlib.py", line 117, in __enter__
return next(self.gen)
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\mongo_client.py", line 1757, in _tmp_session
s = self._ensure_session(session)
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\mongo_client.py", line 1740, in _ensure_session
return self.__start_session(True, causal_consistency=False)
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\mongo_client.py", line 1685, in __start_session
self._topology._check_implicit_session_support()
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\topology.py", line 538, in _check_implicit_session_support
self._check_session_support()
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\topology.py", line 554, in _check_session_support
self._select_servers_loop(
File "C:\Users\Y\Desktop\sparta\frontend\week3\python\venv\lib\site-packages\pymongo\topology.py", line 238, in _select_servers_loop
raise ServerSelectionTimeoutError(
pymongo.errors.ServerSelectionTimeoutError: ac-6e4nabq-shard-00-00.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED]
certificate verify failed: certificate has expired (_ssl.c:1129),ac-6e4nabq-shard-00-01.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129),ac-6e4nabq-shard-00-02.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129), Timeout: 30s, Topology Description: <TopologyDescription id: 63d7a6e2d65ffcf496e272bd, topology_type: ReplicaSetNoPrimary, servers: [<ServerDescription ('ac-6e4nabq-shard-00-00.wnnzi40.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-6e4nabq-shard-00-00.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')>, <ServerDescription ('ac-6e4nabq-shard-00-01.wnnzi40.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-6e4nabq-shard-00-01.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')>, <ServerDescription ('ac-6e4nabq-shard-00-02.wnnzi40.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-6e4nabq-shard-00-02.wnnzi40.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')>]>
(venv)
혹시나 해서 pip install certifi도 해봤는데 이렇게 뜨네요
Requirement already satisfied: certifi in c:\users\y\desktop\sparta\frontend\week3\python\venv\lib\site-packages (2022.12.7)
WARNING: You are using pip version 21.1.1; however, version 22.3.1 is available.
You should consider upgrading via the 'c:\users\y\desktop\sparta\frontend\week3\python\venv\scripts\python.exe -m pip install --upgrade pip' command.
(venv)
