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 9 as of 2014-02-20 14:34:40
  • Python
  • pymongo

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

  • cd /tmp
  • git clone git://github.com/mongodb/mongo-python-driver.git pymongo
  • cd pymongo/
  • su
  • 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

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