그 전 크롤링 코드를 db에 저장 시켜보자.
db 기본코드를 넣고 시작 한다.
print를 지워주고 insert 기본코드를 넣고 데이터를 바꿔 끼운다.
doc = {'title': title,
'star': star,
'rank': rank}
db.movies.insert_one(doc)
👉돌때마다 이 데이터를 db에다 넣어줄 것이다.
Quiz
1.'매트릭스'의 평점 가져오기
2.'매트릭스'의 평점과 같은 평점의 영화 제목들을 가져오기
3.'매트릭스' 영화의 평점을 0으로 만들기
내가 한것
movies = db.movies.find_one({'title':'매트릭스'},{'_id':False})
print(movies)
same_star = list(db.movies.find({'star':'9.39'},{'_id':False}))
print(same_star)
db.movies.update_one({'title':'매트릭스'},{'$set':{'star':'0'}})
선생님이 한것
1.
movie = db.movies.find_one({'title':'매트릭스'})
print(movie['star'])
movie = db.movies.find_one({'title':'매트릭스'})
target_star= movie['star']
👉target_star라는 변수를 만들고 movie['star'] (매트릭스 평점)랑 같다는 정의를 내려준다.
2.target_movies = list(db.movies.find({'star':target_star},{'_id':False}))
👉target_movies라는 변수를 만들어주고 target_star를 찾아 넣어달라 한다.
print(target_movies)
👉하지만 얘는 리스트 안에 딕셔너리가 들어있는 유형이니까 하나씩 뽑아준다.for target in target_movies: print(target)👉각자의 타이틀만 필요하니까
print(target['title'])
db.movies.update_one({'title':'매트릭스'},{'$set':{'star':0}})
👉robo3T가면 0으로 됐지만 ""아이콘이 아니라 다른 아이콘이다
""이 들어간건 문자열이다.나중에 찾을때 숫자로 찾으면 숫자로 입력한거만 나오고 문자열 따로 나올 것이다.이왕이면 통일해서 넣어주는 게 나중에 관리하기 편하다.
3.db.movies.update_one({'title':'매트릭스'},{'$set':{'star':'0'}})
👉'0'따옴표를 붙여주자.어떤 형식으로 담겨있는지도 중요하다.