크롤링
웹상의 특정 데이터를 자동으로 수집하는 프로세스
- 크롤링의 필요성: 대용량 데이터 수집, 가격 비교, 모니터링 등 다양한 활용
크롤링 활용
- 가격 비교 사이트: 여러 온라인 상점의 제품 가격 데이터 수집
- 뉴스 및 미디어 모니터링: 특정 키워드 관련 콘텐츠 수집 및 분석
- 데이터 분석 및 비즈니스 인텔리전스: 시장 동향, 고객 피드백 등분석
- SEO(검색엔진최적화): 웹사이트 구조 및 콘텐츠 분석
- 리서치: 학술 연구, 경쟁사 분석 등
웹 크롤러 작동 원리
- URL 관리
- 웹 페이지 다운로드
- 데이터 추출
- 링크 추출
- 데이터 저장
- 병렬화와 분산처리
- 정중성과 윤리
- 재시작과 복원
robots.txt : 웹사이트에서 크롤러의 접근을 제어하는 표준 파일
효과적인 크롤링 전략
- 정중한 크롤링: 웹 서버 부하 초소화를위해 적절한 지연시간 및 병렬처리 제한
- 병렬 크롤링: 여러 스레드/프로세스를 활용하여 크롤링 속도 향상
- 증분 크롤링: 새롭게 추가/변경된 데이터만 수집하여 중복 방지
- 우선순위 크롤링: 중요한 페이지부터 크롤링하는 전략
- 구조화된 크롤링: 사이트맵, RSS 피드 등 구조화된데이터 활용
BeautifulSoup 소개
Selenium 소개
크롤링 실습
https://creamerburger.tistory.com/32
- 장미 이미지 페이지 크롤링하기
- selenium을 이용한 이미지 여러 장 크롤링하기
- 보안뉴스 사이트 크롤링해서 csv 파일로 저장하기
- 보안뉴스 사이트에서 특정 검색어 넣어서 csv 파일로 저장하기
- chrome 드라이버를 사용해서 기획부장 블로그에 매크로 댓글 테러달기
- scrapy를 사용해서 병렬 크롤링 해보기