💡크롤링
- 크롤링을 위한 파이썬 패키지 (외부 라이브러리 설치)
- requests : 일종의 Ajax와 같은 역할을 하는 패키지로 API 데이터를 추출할 때 사용하며, 파이썬에서 HTTP를 호출하는 프로그램을 작성할 때 주로 사용된다.
- bs4(BeautifulSoup) : requests를 통해 가져온 HTML정보로 부터 원하는 데이터를 가져오기 쉽게, 비슷한 분류의 데이터별로 나누어주는(parsing) 파이썬 라이브러리
크롤링을 위한 기본 골격
import requests
from bs4 import BeautifulSoup
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('url',headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
ex) 영화 크롤링
- 위 사진에서 '밥정' 영화 제목을 가져오기 위해
- 여러 개의 영화 제목을 가져오기 위해
💡mongoDB
- mongoDB란?
- 전통적인 관계형 데이터베이스(RDBMS)보다 덜 제한적인 일관성 모델을 이용하는 NoSQL의 DBMS이다.
- mongoDB Atlas란
- mongoDB를 mongoDB Atlas에 설치를 하면 사용자의 컴퓨팅 자원을 소모하지 않고 사용할 수 있는 원격 DB가 생성된다. (클라우드 데이터베이스)
파이썬에서 mongoDB 접속하는 법
pymongo
와 dnspython
패키지 설치
- mongoDB Atlas에서 클러스터에 들어가 언어와 버전을 설정한 후 아래 나오는 코드를 복사
- 아래 기본코드를 복사한 후 넣고 위에서 복사한 코드 중 password와 클러스터 이름을 변경한 후 url 부분에 넣는다.
from pymongo import MongoClient
client = MongoClient('mongodb+srv://test:패스워드@cluster0.hbsrzff.mongodb.net/클러스터 이름?retryWrites=true&w=majority')
db = client.dbsparta
pymongo로 DB 조작 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
user = db.users.find_one({'name':'bobby'})
all_users = list(db.users.find({},{'_id':False}))
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
db.users.delete_one({'name':'bobby'})