파이썬

파이썬으로 배우는 웹 크롤러1

귀요미찰쓰 2021. 11. 3. 21:48
728x90
반응형
반응형

일단 제 블로그에 파이썬으로 배우는 웹 크롤러 시리즈 형태로 제가 공부한 내용들을 올릴 것인데 이 것은 박정태님이 지으신 파이썬으로 배우는 웹 크롤러 책을 바탕으로 적었음을 알려드립니다.

 

크롤러란?

- 알고리즘에 의해 인터넷을 탐색하는 프로그램입니다.

- 스크래퍼, 봇, 스파이더, 지능 에이전트라고 부릅니다. <- 그런데 이중에서 가장 많이 사용되는 용어는 크롤러와 스크래퍼입니다.

- 스크패가 동적하는 것을 스크래핑이라고 부릅니다.

 

* 검색 엔진은 크롤러를 통해 다양한 페이지를 수집 후 검색 키워드에 맞추어 사용자에게 제공해주는 서비스입니다.

 

크롤러를 만들기 위해 필요한 지식

* 크롤러를 만드는데 다양한 개념이 필요한 이유는 크롤러가 웹에 대해 상당히 의존적이기 때문입니다. 크롤러라는 것은 우리가 수집하고자 하는 사이트에 따라 만드는 방식이 달라집니다. 그러므로 기본 개념을 잘 잡고 크롤러를 만드는 것이 중요합니다.

1. 클라이언트란?

클라이언트란 웹 브라우저을 의미합니다. 우리가 사용하고 있는 각종 앱, 프로그램, 웹 브라우저를 클라이언트 프로그램이라고합니다.

2. 서버란?

클라이언트를 제외하고 보이지 않는 곳에서 클라이언트이 처리를 도와주는 것을 서버라고 부릅니다.

서버는 클라이언트가 필요한 데이터를 제공해주는 역할을 합니다.

복잡한 사이트의 경우 서버의 개념 없이 크롤러를 만드는 것이 불가능합니다.

 

크롤러를 만들어야 하는 이유

데이터 생산

각종 매체를 통해 끊임 없이 데이터가 생산되고 데이터에 노출됩니다. 시간이 지날수록 데이터가 생산되고 데이터를 접하는 양이 점점 더 많아져 직접 데이터를 수집하기 쉽지 않습니다.

데이터의 사용

데이터를 많이 필요로 하는 분야는 인공지능 머신러닝, 딥러닝같은 예측 분야입니다. 이 분야는 데이터가 많을수록 더 정확한 예측을합니다. 그래서 인공지능은 게임뿐만 아니라 애플의 시리와 같은 음성인식, 금융/핀테크, 자동 운전, 검색 엔진 등 다양한 분야에 사용됩니다.

데이터 수집 방법

데이터를 수집하는 가장 간단한 방법은 API를 활용하는 것입니다. API란, 특정 서비스가 데이터를 제공하는 방법입니다. 하지만 웹에서는 API를 제공하지 않아 사용이 불가능한 데이터들이 존재합니다. 이럴 때 크롤러를 만들면 웹에서 제공하는 데이터 수집이 가능합니다. 데이터 수집뿐 아니라 다양한 처리와 데이터 가공을 할 수 있습니다.

 

*크롤러뿐만 아니라 API를 사용하더라도 데이터를 사용하는 목적에 맞춰 가공하는 것이 중요합니다.

반응형