시작하기
Crawlee를 실행하기 위해서는 다음과 같은 사전 요구사항이 필요합니다:
- Node.js 버전 16.0 이상이 설치되어 있어야 합니다. (Node.js 웹사이트에서 다운로드하거나 fnm을 사용하세요)
- NPM이 설치되어 있거나 다른 패키지 매니저를 사용할 수 있어야 합니다.
설치가 제대로 되었는지 확인하려면 다음 명령어를 실행해보세요:
node -v
npm -v
새 프로젝트 만들기
Crawlee로 새 프로젝트를 만드는 가장 빠르고 좋은 방법은 Crawlee CLI를 사용하는 것입니다. npx
도구를 사용하여 CLI를 다운로드하고 실행할 수 있습니다 - 이는 crawlee
패키지에 포함되어 있습니다:
npx crawlee create my-crawler
템플릿을 선택하라는 프롬프트가 표시됩니다. Crawlee는 TypeScript로 작성되었으므로, TypeScript에 익숙하다면 TypeScript 템플릿을 선택하면 더 나은 코드 자동완성과 정적 타입 검사를 받을 수 있습니다. 하지만 JavaScript를 사용해도 무방합니다. 기능적으로는 동일합니다.
첫 번째 템플릿인 시작하기 예제를 선택해보겠습니다. 이 명령어는 현재 작업 디렉토리에 my-crawler라는 새 디렉토리를 만들고, package.json을 추가한 뒤 필요한 모든 종속성을 설치합니다. 또한 바로 실행할 수 있는 예제 소스 코드도 추가됩니다.
한번 실행해볼까요!
cd my-crawler
npm start
Crawlee가 부팅되고 Crawlee 웹사이트를 스크래핑하기 시작하면서 터미널에 로그 메시지가 표시됩니다.
INFO PlaywrightCrawler: 크롤링을 시작합니다
INFO PlaywrightCrawler: https://crawlee.dev/의 제목은 'Crawlee · Build reliable crawlers. Fast. | Crawlee'입니다
INFO PlaywrightCrawler: https://crawlee.dev/docs/examples의 제목은 'Examples | Crawlee'입니다
INFO PlaywrightCrawler: https://crawlee.dev/api/core의 제목은 '@crawlee/core | API | Crawlee'입니다
INFO PlaywrightCrawler: https://crawlee.dev/api/core/changelog의 제목은 'Changelog | API | Crawlee'입니다
INFO PlaywrightCrawler: https://crawlee.dev/docs/quick-start의 제목은 'Quick Start | Crawlee'입니다
터미널에서 키를 눌러 언제든지 크롤링을 중단할 수 있습니다:
CTRL+C
헤드풀 브라우저 실행하기
Playwright가 제어하는 브라우저는 기본적으로 헤드리스(창이 보이지 않는 상태)로 실행됩니다. 크롤러 생성자에서 headless: false
옵션의 주석을 해제하여 헤드풀 모드로 전환할 수 있습니다. 이는 브라우저에서 무슨 일이 일어나고 있는지 확인하고 싶은 개발 단계에서 유용합니다.
// 브라우저 창을 보려면 이 옵션의 주석을 해제하세요.
headless: false
예제를 다시 실행하면 잠시 후 크로미움 브라우저 창이 열립니다. 크롤러가 작업을 수행하면서 페이지가 빠르게 변경되는 것을 볼 수 있습니다.
이 데모를 위해 크롤러의 속도를 늦췄지만, 실제 사용에서는 매우 빠른 속도로 동작합니다.


다음 단계
다음으로, 아주 간단한 크롤러를 만들면서 Crawlee의 구성 요소들에 대해 설명하도록 하겠습니다.