-
(23.04.19) 파이썬크롤링3 - beautifulsoup4, 스크래핑기법TIL 2023. 4. 19. 17:54
TIL은 그날 하루 본인이 어떤 공부를 하였는지 파악하기 위함입니다.
상세하게 기록하여 이후 본인이 어떤 공부를 어떻게 하였는지 파악할 수 있도록 하는 것이 중요합니다.학습 주제
1. beatifulsoup4 라이브러리
- HTML 파싱 라이브러리와 특징을 학습한다
2. 스크래핑 기법
- 스크래핑 기법 3가지의 장단점을 학습한다
주요 메모 사항
BeautifulSoup
- 마크업언어(HTML,XML) 문서를 파싱하고 검색할 수 있는 라이브러리
- 간단하고 쉬운 인터페이스를 제공한다
- 파이썬으로 구현되어 있다
- 파이썬 표준 라이브러리인 html.parser 와 다른 파서를 지원한다 (lxml , html5lib)
BeautifulSoup 와 유사한 라이브러리
lxml - C로 구현된 파서로 빠르고 메모리 효율이 좋다
- 복잡하고 덜 직관적인 인터페이스를 제공
- 크롤링 프레임워크인 Scrapy에 내장되어 있다html5lib - 파이썬으로 구현된 파서, 다른 파서에 비해 느리다
- HTML 파싱에 특화되어 있다스크래핑 기법
종류 장점 단점 콘텐츠 기반 스크래핑 - 웹페이지의 HTML 태그를 타겟팅하여 스크래핑하는 방법
- 가장 간단한 방법웹사이트는 변경되는 경우 이용 불가 레이아웃 기반 스크래핑 - 웹 사이트의 디자인, 레이아웃 정보를 기반으로 스크래핑하는 방법
- 비교적 데이터의 정확성이나 일관성을 보장할 수 있다레이아웃이 복잡하거나
변경될 경우 이용이 불가API기반 스크래핑 - 웹 사이트에서 제공하는 API를 사용하여 데이터를 추출하는 방법
- 데이터의 일관성을 보장하고 접근성이 좋다API를 제공하지 않으면 이용이 불가
공부하며 어려웠던 내용
과도한 요청을 보내지 않는 스크래핑 방법
- time 을 걸어 http 요청간 시차를 둔다
- IP 주소를 변경해 요청하기 (IP Rotation)
'TIL' 카테고리의 다른 글
(23.04.21) 파이썬크롤링5 - seaborn , wordcloud , konlpy (0) 2023.04.21 (23.04.20) 파이썬크롤링4 - selenium / 좋은코드 작성법 (0) 2023.04.21 (23.04.18) 파이썬크롤링2 - HTTP 통신, requests (1) 2023.04.18 (23.04.17) 파이썬크롤링1 - HTML/CSS/JS (1) 2023.04.18 (23.04.12) 자료구조/알고리즘3 - 큐, 트리, 힙 (2) 2023.04.13