
1주 차와 2주 차가 차이가 나지 않는 이유는 11일 챌린지에 참여하기 때문이다. 하루도 빠짐없이 열심히 들을 예정!!!
파이썬 패키지를 설치하는 법을 배웠다. settings ‣‣‣ project:pythonprac ‣‣‣ python interpreter 요기서 하면 된다.
request 와 bs4 를 설치해서 크롤링을 했다.
import requests
from bs4 import BeautifulSoup
위에 두 줄을 꼭 써야지 패키지 사용이 가능하다!!!
# 선택자를 사용하는 방법 (copy selector)
soup.select('태그명')
soup.select('.클래스명')
soup.select('#아이디명')
soup.select('상위태그명 > 하위태그명 > 하위태그명')
soup.select('상위태그명.클래스명 > 하위태그명.클래스명')
# 태그와 속성값으로 찾는 방법
soup.select('태그명[속성="값"]')
# 한 개만 가져오고 싶은 경우
soup.select_one('위와 동일')
웹 크롤링을 이렇게 연습해 보고 db 저장하는 법을 익히기 시작했다.
먼저 주소에 localhost:27017 쳤을 때 요렇게 나오면 성공이다.
It looks like you are trying to access MongoDB over HTTP on the native driver port.
mongoDB라는 프로그램은 GUI(그래픽인터페이스)를 제공하지 않아 보이지 않는다고 한다. 눈으로 보기 위해서 robo3T 라는 프로그램을 설치했다.
세팅은 이름 아무렇게 적고 address에 localhost 27017을 적었주었다.
mongoDB를 조작하기위해 패키지 pymongo를 설치했다.
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.db적고싶은이름
# 코딩 시작
# 저장 - 예시
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'})
db 저장하는 법과 robo3T로 저장된 db들을 확인하는 작업을 했다.
사이트 검사를 누르고 copy selector를 해서 붙여넣기 해가지고 원하는 정보만 찾으면 된다!!
웹스크래핑이 이렇게 재밌다니,,강의를 보고 따라 하다 보면 몇 시간이 후딱 지나간다. 벌써 3주 차 강의를 끝낸 게 믿어지지는 않지만 코딩에 ㅋ은 조금이라도 알 것 같다. 사이트 정보를 어떻게 다 가져오는 거지,,,, 원리부터 알고 싶지만 아직은 한번 훑고 복습하면서 알아봐야겠다.