본문 바로가기

MongoDB

(4)
Mongodb에서 특정한 문자열 검색해서 결과물 리턴하기 find나 find_one에서 어떻게 특정 문자열을 contain한 결과물을 가져올까? 했는데 정규식을 사용하면 된다. import re text='주식캔 연어왈 연어좋아' title = '좋아' p = re.compile(f'.*{title}.*') m = p.match(text) m.group() >>> 주식캔 연어왈 연어좋아 title이라는 변수가 포함되면 text를 반환하는 정규식 코드다. food_col = db.collection # pymongo 사용 def searchbytitle(title): foodlist = [] findfood = food_col.find({"title":{'$regex':f'.*{title}.*'}}) for f in findfood: foodlist.append..
AI 부트캠프 3달 차 : 웹페이지를 만들어 배포하다 🚀 Intro 3달차에는 conda, pipenv, 도커 등으로 가상환경을 만들고, Git으로 원격 레파지토리에서 팀 단위로 협업할 수 있는 방법, SQL(sqlite, Postgresql)과 NoSQL(MongoDB)로 데이터베이스를 구상하고 이를 클라우드 환경에서 관리하는 방법, 파이썬 언어로 Flask로 웹앱을 만들고 데이터베이스와 연결하여, heroku를 통해 배포하는 과정을 배웠다. 정말 빡센 과정이었다...! 하지만 웹서비스를 기획하고 만드는 건 생각보다 내 적성에 맞는다는 걸 깨달은 달이기도 했다. 📊 데이터셋 선정 다양한 데이터셋을 다뤄보는 게 포트폴리오에 좋을 것 같아서 2달 차에 다룬 영화 데이터 말고 다른 데이터를 다뤄보고 싶었으나 촉박한 프로젝트의 일정상, 영화 데이터를 이용해 머신..
flask-mongoengine으로 추가한 데이터가 Mongodb에서 보이지 않을 때 내가 해결한 방법 : api로 받아온 json 파일의 스펠링을 1)스키마와 2)몽고디비에 추가하는 함수에 들어갈 변수와 일치시켜야 한다. 몽고디비를 사용한 이유가 json 파일 자체를 간편하게 추가할 수 있다는 장점 때문이었는데, ORM 방식으로 몽고디비를 사용하기 위해서는 결국 노가다로 변수를 넣어주어야 했다... 내가 사용한 데이터는 restAPI 사이트에서 키를 발급받아 받아온 IMDb 데이터로, json 파일에 key가 대문자로 들어있었다. # 주의 : 무조건 소문자가 아니라 json 파일과 일치하도록 key값의 대소문자를 넣어야 합니다. class Movie(db.Document): title = db.StringField() year = db.IntField() rated = db.String..
mongodump 없이 Mongocb Collection 백업하고 복사하기 먼저 MongoDB Compass 가 설치되어 있어야 한다. 한참 찾아보며 삽질했는데 너무나 간단하게 할 수 있었다.... MongoDB Compass 에 데이터베이스를 연결 후, 내보낼 Collection을 클릭하고 상단의 Collection-Export Collection을 누른다. Export Full Collection을 누르고 Select Fields를 해준다 이렇게 원하는 Field만 골라서 할 수 있다 디폴트는 전체 Field가 선택된다. SELECT OUTPUT 클릭. JSON, CSV 형태를 골라 어디다가 저장할건지 물어본다. 파일 이름도 지정할 수 있다. 하고나서 EXPORT 클릭 내보낸 데이터 다른 콜렉션에 넣기 데이터베이스 옆의 + 버튼을 눌러 새 콜렉션을 만들어준다. 해당 콜렉션 ..