본문 바로가기
코딩 공부/Python

크롤링

by 현장 2023. 6. 21.

크롤링(crawling)

데이터를 수집하고 분류하는 것을 의미한다. 주로 인터넷상의 웹페이지를 수집해서 분류하고 저장하는 것을 뜻하며 데이터가 어디에 저장되어 있는지 위치에 대한 분류 작업이 크롤링의 주요 목적이다.

웹 크롤러(web crawler)
조직적, 자동화된 방법으로 월드 와이드 웹을 탐색하는 컴퓨터 프로그램

 

- 크롤링 종류

 

1. 정적 크롤링

정적크롤링은 정적인 데이터를 수집하는 방법을 말합니다. 또한 하나의 페이지 내에서 모든 작업이 이루어지기 때문에 속도가 매우 빠르다는 장점을 가집다.

정적인 데이터
변하지 않는 데이터를 의미합니다. 즉 한 페이지 안에서 원하는 정보가 모두 드러날때 정적 데이터라고 할 수 있다.

 

2. 동적 크롤링

동적크롤링은 동적인 데이터를 수집하는 방법을 말합다. 정적 크롤링 보다 수집하는 속도가 느리다는 단점이 있지만 더 많은 정보를 수집할 수 있다는 장점이 있습니다.

동적인 데이터
 입력, 클릭, 로그인 등과 같이 페이지 이동이 있어야 보이는 데이터를 말한다.

 

정적 크롤링 vs 동적 크롤링

  정적 크롤링 동적 크롤링
속도 빠르다 느리다
개발 편의성 처음에 쉽지만 고도화 되면 힘다. 처음에 손이 많이가지만 나중에 편리하다.
디버깅 편의성 쉽다. 어렵다.
오류 취약점 상대적으로 낮다. 상대적으로 높다.
라이브러리 requests, BeautifulSoup selenium, chromedriver