pymongo는 파이썬으로 MongoDB를 조작하는 라이브러리
만약 엑셀을 파이썬으로 조작하려면 남이 만들어놓은 라이브러리를 쓰는게 좋듯
남이 만들어 놓은 pymongo라는 라이브러리를 사용
크롤링과 마찬가지로 기본 코드를 깔고 해야함
1
2
3
4
5
|
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
# 코딩 시작
|
cs |
INSERT / FIND / UPDATE / DELETE
1. insert : 데이터 넣는것
2. find : 찾는것ㅅ
3. update : update하는것
4. delete : 삭제하는것
# 저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
# 한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})
# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
same_ages = list(db.users.find({'age':21},{'_id':False}))
# 바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
# 지우기 - 예시
db.users.delete_one({'name':'bobby'})
|
cs |
1.insert
1
2
3
4
5
6
7
8
|
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
|
cs |
run하면 print도 없고 당연히 안나옴
근데 Robo3T 가서 mylocalbd를 refresh하면 생김
from pymongo import MongoClient 파이몬고를 쓰겠습니다
client = MongoClient('localhost', 27017) 내 컴퓨터에서 돌아가고 있는 몽고디비에 접속할겁니다
db = client.dbsparta 디비 스파르타라고 하는 디비에 접속하겠습니다(없으면 생김)
2-1. find (반복문을 넣어본 코드)(모든 document를 find하려면 {'age':21}을 빈 중괄호로 바꾸면 됌{})
무언가를 찾아서 same_ages라는 변수에 넣기
1
2
3
4
5
6
7
8
9
10
|
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
same_ages = list(db.users.find({'age':21},{'_id':False}))
for person in same_ages:
print(person)
|
cs |
{'-id':False}가 들어가는 이유는 아래 보여지는 불필요한 _id값이 다 나오기 때문에
2-2. find_one
user = db.users.find_one({'name':'bobby'})z
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
user = db.users.find_one({'name':'bobby'},{'_id':False})
print(user)
|
cs |
3.update_one (update_many 도 있지만 위험해서 잘 안씀)
user = db.users.find_one({'name':'bobby'})z
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
|
cs |
4.delete (마찬가지로 delete_many가 있지만 위험해서 잘 안씀)
user = db.users.find_one({'name':'bobby'})z
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
db.users.delete_one({'name':'bobby'})
|
cs |