> ## Documentation Index
> Fetch the complete documentation index at: https://crewai.burt.pe.kr/llms.txt
> Use this file to discover all available pages before exploring further.

# Firecrawl 웹사이트 크롤링

> FirecrawlCrawlWebsiteTool은 웹사이트를 크롤링하고 깔끔한 마크다운 또는 구조화된 데이터로 변환하도록 설계되었다.

# `FirecrawlCrawlWebsiteTool`

## 설명

[Firecrawl](https://firecrawl.dev)은 웹사이트를 크롤링하여 깔끔한 마크다운이나 구조화된 데이터로 변환할 수 있는 플랫폼이다.

## 설치

1. [firecrawl.dev](https://firecrawl.dev)에서 API 키를 발급받고 환경 변수(`FIRECRAWL_API_KEY`)로 설정한다.
2. [Firecrawl SDK](https://github.com/mendableai/firecrawl)와 `crewai[tools]` 패키지를 함께 설치한다:

```shell theme={null}
pip install firecrawl-py 'crewai[tools]'
```

## 예제

에이전트가 웹사이트를 로드할 수 있도록 FirecrawlScrapeFromWebsiteTool을 다음과 같이 사용한다:

```python theme={null}
from crewai_tools import FirecrawlCrawlWebsiteTool

tool = FirecrawlCrawlWebsiteTool(url='firecrawl.dev')
```

## 인자

* `api_key`: 선택 사항. Firecrawl API 키를 지정한다. 기본값은 `FIRECRAWL_API_KEY` 환경 변수다.
* `url`: 크롤링을 시작할 기본 URL이다.
* `page_options`: 선택 사항.
  * `onlyMainContent`: 선택 사항. 헤더, 네비게이션, 푸터 등을 제외하고 페이지의 주요 내용만 반환한다.
  * `includeHtml`: 선택 사항. 페이지의 원시 HTML 콘텐츠를 포함한다. 응답에 html 키를 출력한다.
* `crawler_options`: 선택 사항. 크롤링 동작을 제어하는 옵션이다.
  * `includes`: 선택 사항. 크롤링에 포함할 URL 패턴이다.
  * `exclude`: 선택 사항. 크롤링에서 제외할 URL 패턴이다.
  * `generateImgAltText`: 선택 사항. LLM을 사용해 이미지에 대한 alt 텍스트를 생성한다(유료 플랜 필요).
  * `returnOnlyUrls`: 선택 사항. true로 설정하면 크롤링 상태에서 URL 목록만 반환한다. 주의: 응답은 문서 목록이 아닌 data 안에 URL 목록이 된다.
  * `maxDepth`: 선택 사항. 크롤링할 최대 깊이를 설정한다. 깊이 1은 기본 URL이고, 깊이 2는 기본 URL과 직접 연결된 자식 페이지를 포함한다.
  * `mode`: 선택 사항. 사용할 크롤링 모드를 지정한다. 빠른 모드는 사이트맵이 없는 웹사이트에서 4배 더 빠르게 크롤링하지만 정확도가 떨어질 수 있으며, 자바스크립트가 많이 사용된 웹사이트에는 적합하지 않다.
  * `limit`: 선택 사항. 크롤링할 최대 페이지 수를 설정한다.
  * `timeout`: 선택 사항. 크롤링 작업의 타임아웃을 밀리초 단위로 설정한다.
