MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap
Revision 13 as of 2025-02-06 16:01:41
  • Python
  • pymongo

Contents

  1. pymongo
    1. Install from source on Slackware
    2. Eclipse - pydev
    3. Queries
    4. Driver windows Python 2.5
    5. datetime.datetime is not JSON serializable
    6. Array of objects in pymongo without cursor
    7. Query with regular expression
    8. pymongo 3.4.0 example

pymongo

PyMongo is a Python distribution containing tools for working with MongoDB, and is the recommended way to work with MongoDB from Python

http://api.mongodb.org/python/current/

Install from source on Slackware

   1 cd /tmp
   2 git clone git://github.com/mongodb/mongo-python-driver.git pymongo
   3 cd pymongo/
   4 su
   5 python setup.py install

Eclipse - pydev

  • Window
  • Preferences
  • pydev
  • interpreter - python
  • Forced builtins
  • new
  • pymongo
  • apply Ok

Queries

Query by _id

   1 from bson import ObjectId
   2 import pymongo
   3 import datetime
   4 mongo = pymongo.Connection("mongodb://192.168.1.1:27017/?slaveok=true")
   5 #mongo = pymongo.Connection('192.168.1.1', 27017)
   6 dbx = mongo['dbx']
   7 collx = dbx['collx']
   8 
   9 nowx = datetime.datetime.now();
  10 currDay = datetime.datetime(nowx.year,nowx.month,nowx.day,0,0,0,0)
  11 
  12 query={'_id':ObjectId(objx.getId()) }
  13 print query
  14 res = collx.find_one(query )            
  15 print res

Driver windows Python 2.5

https://pypi.python.org/packages/2.5/p/pymongo/pymongo-2.6.3.win32-py2.5.exe

datetime.datetime is not JSON serializable

   1 from bson import json_util
   2 import json
   3 
   4 json.dumps(anObject, default=json_util.default)

Array of objects in pymongo without cursor

   1 import pymongo 
   2 resList= list(collx.find({'keyx':1}) )

Query with regular expression

http://docs.mongodb.org/manual/reference/operator/query/regex/

   1 import pymongo 
   2 db.collection.find( { field: /acme.*corp/i } );
   3 db.collection.find( { field: { $regex: 'acme.*corp', $options: 'i' } } );
   4 ###############################################
   5 
   6 import pymongo 
   7 
   8 mongo = pymongo.Connection("mongodb://10.0.0.130:27017/?slaveok=true")    
   9 dbx = mongo['dbx']
  10 collx = dbx['collx']
  11 res=list(collx.find({'type':'typex','sms':{'$regex':'param'}}).sort('_id',1))

pymongo 3.4.0 example

   1 import pymongo
   2 mongouri='mongodb://127.0.0.1:27017/?slaveok=true'
   3 print('pymongo version %s '%( pymongo.__version__) ) # 3.4.0
   4 mongo = pymongo.MongoClient(mongouri)
   5 db = mongo.test
   6 
   7 print('Database name: %s '%( db.name  ))
   8 
   9 print('Collections:')
  10 for col in db.collection_names():
  11   print('  %s'%(col))
  12 
  13 resList= list(db.collx.find({}) )
  14 for item in resList:
  15   print( item )
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01