크롤링(Crawing) 을 하려면 어떤 기술을 알아야할까?

크롤링을 하려면 기본적으로 알아야 할 기술들이 있습니다. 다음에 소개할 HTML, CSS, 그리고 JavaScript는 크롬이나 엣지같은 웹 브라우저 에서 보여지는 웹 페이지를 구축하고 인터랙티브하게 만드는 데 꼭 필요한 핵심 기술입니다.

HTML, CSS, JavaScript 에 대한 이해

HTML은 HyperText Markup Language의 약자로, 웹 페이지의 구조를 생성하는 언어입니다. HTML 태그는 문서의 다른 부분에 대한 레이블을 생성하며, 이를 통해 텍스트를 제목, 단락, 링크 등으로 변환할 수 있습니다.

ㅇㅇㅇ

JavaScript는 웹 페이지를 동적이고 인터랙티브하게 만드는 스크립트 언어입니다. 이를 통해 사용자와 상호 작용하는 웹 페이지를 만들 수 있으며, 클라이언트 측에서 실행되어 웹 페이지의 로딩 속도를 향상시키는 데 도움이 됩니다. 또한, 현대 웹 개발에 필수적인 프레임워크와 라이브러리(예: React, Angular, Vue.js 등)를 지원합니다.

CSS는 Cascading Style Sheets의 약자로, 웹 페이지의 디자인과 레이아웃을 책임지는 스타일 규칙을 설정하는 언어입니다. CSS를 이용하면, 글꼴, 색상, 간격, 배경 이미지 등 웹 페이지의 모든 시각적 요소를 제어할 수 있습니다.

파이썬 프로그래밍

아나콘다, conda, pip, 터미널 환경 등

라이브러리, 패키지 등

BeautifulSoup 은 HTML과 XML 문서를 파싱하는데 사용됩니다. 웹 페이지의 DOM(문서구조) 을 쉽게 탐색하고 필요한 데이터를 추출할 수 있습니다. 크롤링에 있어서 가장 중요한 패키지 중의 하나로 HTML 을 구성하는 모든 태그를 찾고, 각 태그의 text 값, 설명, url 등 모든 속성을 알아내는 것이 가능합니다.

Requests 라이브러리는 HTTP 요청을 보내는 데 사용합니다. 즉, 웹 페이지의 HTML을 가져올 수 있으며, 웹 서버에 GET, POST, DELETE 등의 요청을 보낼 수도 있습니다. 파이썬 소스 상에서는 크롤링 하고자 하는 사이트의 주소를 가져올 때 사용합니다.

Selenium은 웹 브라우저 자동화 도구로, 웹 애플리케이션을 테스트하거나 크롬 브라우저를 상에서 사용자가 직접 브라우저 작업을 수행하는 것처럼 웹 페이지를 탐색하고 상호 작용할 수 있습니다. 버튼을 클릭하고 페이지를 스크롤 하며 우리가 크롬이나 엣지같은 브라우저를 통해 웹 서핑하는 방식 그대로 액션을 수행할 수 있기 때문에 셀레니움은 크롤링 기술에 필수적 입니다.

여기까지 필수 기술에 대하여 간략하게 소개하고, 각 기술에 대한 자세한 정보는 다음 포스팅에 상세히 올리도록 하겠습니다.