Docs Menu

Docs Homeアプリケーションの開発Python ドライバーPyMongo

MongoDB に接続する

このページには、Python アプリケーションをさまざまな設定で MongoDB に接続する方法を示すコード例が含まれています。

Tip

このページの接続オプションの詳細については、各セクションに記載されているリンクを参照してください。

このページの接続例を使用するには、コード例をサンプルアプリケーションまたは独自のアプリケーションにコピーします。 <hostname>などのコード例にあるすべてのプレースホルダーを、MongoDB 配置に関連する値に置き換えてください。

次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。

  1. PyMongo がインストールされていることを確認します。

  2. 次のコードをコピーし、新しい.pyファイルに貼り付けます。

  3. このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。

1from pymongo import MongoClient
2
3try:
4 # start example code here
5
6 # end example code here
7
8 client.admin.command("ping")
9 print("Connected successfully")
10
11 # other application code
12
13 client.close()
14
15except Exception as e:
16 raise Exception(
17 "The following error occurred: ", e)
uri = "mongodb://localhost:27017/"
client = MongoClient(uri)
uri = "<Atlas connection string>"
client = MongoClient(uri, server_api=pymongo.server_api.ServerApi(
version="1", strict=True, deprecation_errors=True))
uri = "mongodb://<replica set member>:<port>/?replicaSet=<replica set name>"
client = MongoClient(uri)
client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname:<port>", tls=True)

TLS を有効にする方法の詳細については、TLS 構成ガイドの「 TLSを有効にする 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsCAFile="/path/to/ca.pem")

CA ファイルの指定の詳細については、TLS 構成ガイドの「 CA ファイルの指定」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsDisableOCSPEndpointCheck=True)

OCSP チェックを無効にする方法の詳細については、TLS 構成ガイドの「 OCSP 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsCRLFile="/path/to/crl.pem")

CRL の指定の詳細については、TLS 構成ガイドの「証明書失効リスト」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsCertificateKeyFile='/path/to/client.pem')

クライアント証明書の指定の詳細については、TLS 構成ガイドの「クライアント証明書の提示」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname:<port>",
tls=True,
tlsCertificateKeyFile='/path/to/client.pem',
tlsCertificateKeyFilePassword=<passphrase>)

キー ファイルのパスワードの指定の詳細については、TLS 構成ガイドの「キー パスワードの指定」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname:<port>",
tls=True,
tlsInsecure=True)

安全でない TLS の許可の詳細については、TLS 構成ガイドの「 安全でない TLS を許可する 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsAllowInvalidCertificates=True)

証明書検証を無効にする方法の詳細については、TLS 構成ガイドの「 安全でない TLS の許可」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
tls=True,
tlsAllowInvalidHostnames=True)

ホスト名検証を無効にする方法の詳細については、TLS 構成ガイドの「 安全でない TLS を許可する 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
compressors = "snappy,zstd,zlib")

圧縮アルゴリズムの指定の詳細については、ネットワーク圧縮ガイドの「 圧縮アルゴリズムの指定 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
compressors = "zlib",
zlibCompressionLevel=<zlib compression level>)

zlib 圧縮レベルの設定の詳細については、ネットワーク圧縮ガイドの「圧縮アルゴリズムの指定 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
server_selector=<selector function>)

サーバー選択をカスタマイズする方法について詳しくは、「 サーバー選択をカスタマイズする 」を参照してください

from pymongo.server_api import ServerApi
client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname:<port>",
server_api=ServerApi("<Stable API version>"))

Stable API の詳細については、「 Stable API 」を参照してください。

with pymongo.timeout(<timeout length>):
# perform operations here

クライアント側タイムアウトの詳細については、「サーバーの実行時間の制限 」を参照してください。

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname@:<port>",
timeoutMS=<timeout length>)

クライアント側タイムアウトの詳細については、「サーバーの実行時間の制限 」を参照してください。