首页 > 解决方案 > 如何在 git bash 中使用 try-catch 连接 mongodb 并捕获 mondodb 连接错误?

问题描述

** a) 我想连接到 MongoDB b) 使用 try-catch 块包围 Mondodb c)catch 异常。

我必须使用 git 来获取最新的分支。

I have assumed that the below command will run before MongoDB connection:
source setenv.sh
source /opt/home/setenv.sh
python3 mongodb.py

python 脚本应该有一个与 /opt/home/ 下的 setenv.sh 脚本同名的 shell 包装器

外壳包装器名称:mongodb.sh python 脚本名称:mongodb.py 我必须使用外壳包装器来运行脚本

编码环境是jupyter实验室,我不知道如何使用它,这就是我在这里问这个问题的原因。喜欢寻求帮助

我使用下面的代码与 mongo 连接:

from urllib.parse 
import quote_plus
import os 
import json from pymongo
import MongoClient 
import SSL 

def main():

    environment = "Git" if os.environ.get('ENVIRONMENT_NAME') is None else os.environ.get('ENVIRONMENT_NAME')
    config_directory = os.path.abspath(os.path.join(os.path.dirname(__file__)))
    with open(os.path.join(config_directory, "report_config.json")) as f:
        common_configuration = json.load(f)
    #mongo_db = common_configuration['mongo_db_'+environment]
    mongo_url, mongo_db_name= create_mongo_url_db()
    #print("mongo_url:%s, mongo_db_name:%s" %(mongo_url,mongo_db_name))
    # mongo_url = "mongodb://%s:%s@%s:%s" % (
    #             quote_plus(mongo_db['user_name']), quote_plus(mongo_db['password']),
    #             quote_plus(mongo_db['host']), quote_plus(mongo_db['port']))
    #mongo_db_name= mongo_db['mongo_db_name']
    collection_name= "workflow"
    db = MongoClient(mongo_url, ssl=True, ssl_cert_reqs=ssl.CERT_NONE)

标签: pythonmongodbbashgit

解决方案


推荐阅读