2019. 7. 29. 19:28ㆍ파이썬
크롤러라는 것은 사람처럼 웹에 접속해서 데이터를 받아오는 프로그램이다.
requests는 파이썬에서 사용할 수 있는 웹 request 모듈이다. requests를 이용하여 요청하면, 서버가 응답해주는 값을 받아올 수 있다.
import requests as rq
url = "접속할 웹사이트 주소"
res = rq.get(url) or res = rq.post(url)
* get방식으로 요청을 보낼 때는 rq.get(url), post 방식으로 요청을 보낼 때는 rq.post(url)을 쓴다.
* rq의 반환값은 String이다. 그런데 string 형태의 자료구조로는 select, select_one, find 등을 사용해서 tag 검색을 할 수 없다. 그래서 BeautifulSoup을 쓰고 parser를 쓰는거라고 한다.
요청을 보낼때 데이터를 함께 담아 보낼 수 있다.
쿼리스트링의 경우, res = rq.get(url, params= {"key" : "value", "key" : "value" ....})
POST 방식의 요청의 경우 res = rq.post(url, data = {"key" : "value", "key" : "value" ....})
이런식으로 쓴다.
크롤링 사이트 접근이 막혔을 때는 headers 정보도 같이 보내주자.
headers = {'user-agent' : '복붙', 'referer' : '복붙'}
* 복붙하는 정보는 F12 > Network > Headers 에서 확인할 수 있다.
* parser : 문자열 내용을 해석할 수 있도록 분석하는 프로그램. html 문서에 접근해서 긁어온 내용(문자열 타입)을 html 문서로 인식할 수 있도록 바꿔주는 역할을 한다.
1) html.parser
2) lxml
3) html5lib
주요 참고자료 : <파이썬으로 배우는 웹 크롤러>, 박정태, 정보문화사
'파이썬' 카테고리의 다른 글
크롤링 기본 흐름 (0) | 2019.08.10 |
---|---|
파이썬 크롤링 BeautifulSoup 네이버 실검 따기 (0) | 2019.07.29 |
파이썬 for문 별찍기의 원리 이해하기 (1) | 2019.05.26 |
파이썬 for in 작동 원리 이해하기 (0) | 2019.05.26 |
파이썬 리스트 내용 삭제하기 (0) | 2019.05.25 |