pip install diegia mongoDB python2.X versijai.
sudo pip install pymongo
todėl reikia atsisiųsti python3-pip paketą
sudo apt-get install python3-pip
dabar galim diegti mongoDB python3.X versijai
sudo pip3 install pymongo
Jei mėginant pridėti įrašą meta klaidą, nes nepaleistas mongodb servisas
pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 111] Connection refused
mongoDB serviso paleidimas:
systemctl start mongodb.service
/etc/init.d/mongodb start
mongoDB logai:
tail -f /var/log/mongodb
Pavyzdys:
>>> import pymongo
>>> client = pymongo.MongoClient() #arba
>>> client = MongoClient('mongodb://localhost:27017' )
>>> db = client.test #arba db = client['test']
Įrašymas:
>>> db.sites.insert({"url":"http://technologijos.lt", "name":"Anonimas"}) # į sites collection įrašomas įrašas
>>> db.sites.find_one() #Vieno įrašo atvaizdavimas
{'url': 'http://technologijos.lt', '_id': ObjectId('577b550e8624ed65e8985496'),#Sukurtas unikalus objekto identifikatorius.
'name': 'Anonimas'}
>>> list(db.sites.find({'name':'Anonimas'})) #Visų įrašų atvaizdavimas pagal atributus
>>> db.sites.count() #Visų elementu kiekis
Vaizdas iš mongo duomenų bazės:
$ mongo
> show databases #kitam terminale "db" tikrinimas
admin (empty)
local 0.078GB
sinonimai 0.078GB
test 0.078GB
> use test #pasirenkamas duomenų bazės pavadinimas
switched to db test
> show collections
sites
system.indexes
> db.sites.find() #atvaizduoja visus db įrašus
{ "_id" : ObjectId("57c9737a8624ed5d57b51e78"), "url" : "http://technologijos.lt", "name" : "Anonimas" }
{ "_id" : ObjectId("57caa9bb8624ed1b31495971"), "url" : "http://technologijos.lt", "name" : "Anonimas" }
>>> db.sites.find_one()["url"]
'http://technologijos.lt'
Literatūra:
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/ - mongoDB ubuntu diegimas
http://api.mongodb.com/python/current/tutorial.html - komandos
http://blog.pythonisito.com/2012/01/moving-along-with-pymongo.html - darbas su db.