mongoDB 는 dic 가 쌓이는 것. (하지만, 눈에 보이지 앟는다. GUI 없음)
mongoDB 를 조작하려면 pymongo가 필요(Pymongo 라이브러리패키지 설치 후 사용)
robo3T 는 그 DB내부를 살펴보는 프로그램.
import requests
from bs4 import BeautifulSoup
from pymongo import MongoClient 파이몽고를 쓰겠다
client = MongoClient('localhost', 27017) 내 컴퓨터에서 돌아가고 있는 몽고디비에 접속한다
db = client.dbsparta dbsparta 라는 db에 접속한다 (없으면 자동생성됨)
# URL을 읽어서 HTML를 받아오고,
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get('https://movie.naver.com/movie/sdb/rank/rmovie.
# HTML을 BeautifulSoup이라는 라이브러리를 활용해 검색하기 용이한 상태로 만듦
soup = BeautifulSoup(data.text, 'html.parser')
그 다음, select 로 tr들 긁어오고,
for문으로 긁어온 내용 반복문 돌려서 원하는 내용 뽑아낸다.
그 내용을 DB에 저장하기!
doc = {'name':'bobby','age':21} 라는 dic를
db.users.insert_one(doc) db안에 users 라는 collection 에 저장(insert)
user = db.users.find_one({'name':'bobby'}) users 에 name이 bobby인 것 찾기(find)
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'}) 지우기
*웹스크래핑 시,
파이썬 공백 제거 : text.strip()
파이썬 문자열 자르기 : [0:5] 0~5번째 까지만.(알파벳 개수 카운트해서 슬라이싱 범위 지정)