การแจกจ่าย PyMongo มีเครื่องมือสำหรับการโต้ตอบกับฐานข้อมูล MongoDB จาก Python แพ็คเกจ bson
คือการนำรูปแบบ BSON ไปใช้สำหรับ Python แพ็คเกจ pymongo
เป็นไดรเวอร์ Python ดั้งเดิมสำหรับ MongoDB แพ็คเกจ gridfs
เป็นการใช้งาน gridfs ที่ด้านบนของ pymongo
PyMongo รองรับ MongoDB 4.0, 4.2, 4.4, 5.0, 6.0, 7.0 และ 8.0
สำหรับปัญหา คำถาม หรือข้อเสนอแนะเกี่ยวกับ PyMongo โปรดดูช่องทางการสนับสนุนของเรา โปรดอย่าส่งอีเมลถึงนักพัฒนา PyMongo โดยตรงเพื่อแจ้งปัญหาหรือคำถาม คุณมีแนวโน้มที่จะได้รับคำตอบจาก StackOverflow มากขึ้น (โดยใช้แท็ก "mongodb")
คิดว่าคุณได้พบข้อบกพร่องหรือไม่? ต้องการดูคุณสมบัติใหม่ใน PyMongo หรือไม่? โปรดเปิดเคสในเครื่องมือการจัดการปัญหาของเรา JIRA:
รายงานข้อผิดพลาดใน JIRA สำหรับโปรเจ็กต์ไดรเวอร์ทั้งหมด (เช่น PYTHON, CSHARP, JAVA) และโปรเจ็กต์ Core Server (เช่น SERVER) เป็น แบบสาธารณะ
โปรดระบุข้อมูลทั้งหมดต่อไปนี้เมื่อเปิดประเด็น:
ขั้นตอนโดยละเอียดในการทำให้เกิดปัญหาอีกครั้ง รวมถึงการย้อนกลับแบบเต็ม หากเป็นไปได้
เวอร์ชันของ Python ที่ใช้กับระดับแพตช์:
python -c " import sys; print(sys.version) "
python -c " import pymongo; print(pymongo.version); print(pymongo.has_c()) "
ระบบปฏิบัติการและเวอร์ชัน (เช่น Windows 7, OSX 10.8, ...)
กรอบงานเว็บหรือไลบรารีเครือข่ายแบบอะซิงโครนัสที่ใช้ ถ้ามี กับเวอร์ชัน (เช่น Django 1.7, mod_wsgi 4.3.0, gevent 1.0.1, Tornado 4.0.2, ...)
หากคุณระบุช่องโหว่ด้านความปลอดภัยในไดรเวอร์หรือโครงการ MongoDB อื่น ๆ โปรดรายงานตามคำแนะนำที่นี่
PyMongo สามารถติดตั้งได้ด้วย pip:
python -m pip install pymongo
คุณยังสามารถดาวน์โหลดซอร์สโปรเจ็กต์และทำ:
pip install .
อย่า ติดตั้งแพ็คเกจ "bson" จาก pypi PyMongo มาพร้อมกับแพ็คเกจ bson ของตัวเอง; การเรียกใช้ "pip install bson" จะติดตั้งแพ็คเกจบุคคลที่สามที่ไม่สามารถใช้งานร่วมกับ PyMongo ได้
PyMongo รองรับ CPython 3.9+ และ PyPy3.9+
การพึ่งพาที่จำเป็น:
การสนับสนุน mongodb+srv://
URIs ต้องใช้ dnspython
การพึ่งพาเพิ่มเติม:
การตรวจสอบสิทธิ์ GSSAPI ต้องใช้ pykerberos บน Unix หรือ WinKerberos บน Windows การพึ่งพาที่ถูกต้องสามารถติดตั้งได้โดยอัตโนมัติพร้อมกับ PyMongo:
python -m pip install " pymongo[gssapi] "
การตรวจสอบสิทธิ์ MONGODB-AWS ต้องใช้ pymongo-auth-aws:
python -m pip install " pymongo[aws] "
OCSP (Online Certificate Status Protocol) ต้องใช้ PyOpenSSL, คำขอ, service_identity และอาจต้องมีใบรับรอง:
python -m pip install " pymongo[ocsp] "
การบีบอัดโปรโตคอล Wire ด้วย snappy ต้องใช้ python-snappy:
python -m pip install " pymongo[snappy] "
การบีบอัดโปรโตคอล Wire ด้วย zstandard ต้องใช้ zstandard:
python -m pip install " pymongo[zstd] "
การเข้ารหัสระดับฟิลด์ฝั่งไคลเอ็นต์ต้องใช้ pymongocrypt และ pymongo-auth-aws:
python -m pip install " pymongo[encryption] "
คุณสามารถติดตั้งการขึ้นต่อกันทั้งหมดโดยอัตโนมัติด้วยคำสั่งต่อไปนี้:
python -m pip install " pymongo[gssapi,aws,ocsp,snappy,zstd,encryption] "
การพึ่งพาเพิ่มเติมคือ:
นี่คือตัวอย่างพื้นฐาน (สำหรับข้อมูลเพิ่มเติม โปรดดูส่วนตัว อย่าง ของเอกสาร):
>>> import pymongo
>>> client = pymongo.MongoClient( " localhost " , 27017 )
>>> db = client.test
>>> db.name
'test'
>>> db.my_collection
Collection(Database(MongoClient('localhost', 27017), 'test'), 'my_collection')
>>> db.my_collection.insert_one({ " x " : 10 }).inserted_id
ObjectId('4aba15ebe23f6b53b0000000')
>>> db.my_collection.insert_one({ " x " : 8 }).inserted_id
ObjectId('4aba160ee23f6b543e000000')
>>> db.my_collection.insert_one({ " x " : 11 }).inserted_id
ObjectId('4aba160ee23f6b543e000002')
>>> db.my_collection.find_one()
{'x': 10, '_id': ObjectId('4aba15ebe23f6b53b0000000')}
>>> for item in db.my_collection.find():
... print (item[ " x " ])
...
10
8
11
>>> db.my_collection.create_index( " x " )
'x_1'
>>> for item in db.my_collection.find().sort( " x " , pymongo. ASCENDING ):
... print (item[ " x " ])
...
8
10
11
>>> [item[ " x " ] for item in db.my_collection.find().limit( 2 ).skip( 1 )]
[8, 11]
มีเอกสารประกอบอยู่ที่ pymongo.readthedocs.io
เอกสารสามารถสร้างขึ้นได้โดยการรัน pip install hat; ฟักไข่รัน doc: build . เอกสารที่สร้างขึ้นสามารถพบได้ในไดเร็กทอรี doc/build/html/
วิธีที่ง่ายที่สุดในการรันการทดสอบคือการรัน การรันการทดสอบ: ทดสอบ * ในรากของการแจกแจง ตัวอย่างเช่น,
pip install hatch
hatch run test:test