> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firecrawl.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# LlamaIndex

> O Firecrawl integra-se ao LlamaIndex como leitor de documentos.

<div id="installation">
  ## Instalação
</div>

```bash theme={null}
pip install firecrawl-py llama-index llama-index-readers-web
```

<div id="usage">
  ## Uso
</div>

`FireCrawlWebReader` oferece suporte a três modos: `scrape` para uma página única, `crawl` para um site e `extract` para dados estruturados.

<div id="using-firecrawl-to-gather-an-entire-website">
  ### Usando o Firecrawl para coletar um site inteiro
</div>

```python theme={null}
from llama_index.readers.web import FireCrawlWebReader
from llama_index.core import SummaryIndex
import os


# Inicialize o FireCrawlWebReader para rastrear um site
firecrawl_reader = FireCrawlWebReader(
    api_key="<your_api_key>",  # Substitua pela sua chave de API em https://www.firecrawl.dev/
    mode="crawl",  # "scrape", "crawl" ou "extract"
    params={"additional": "parameters"}  # Parâmetros adicionais opcionais
)

# Defina a variável de ambiente para a chave da API
os.environ["OPENAI_API_KEY"] = "<OPENAI_API_KEY>"

# Carregue documentos de uma única URL
documents = firecrawl_reader.load_data(url="http://paulgraham.com/")
index = SummaryIndex.from_documents(documents)

# Ajuste o nível de log para DEBUG para obter saídas mais detalhadas
query_engine = index.as_query_engine()
response = query_engine.query("What did the author do growing up?")
display(Markdown(f"<b>{response}</b>"))
```

<div id="using-firecrawl-to-gather-a-single-page">
  ### Usando o Firecrawl para coletar uma única página
</div>

```python theme={null}
from llama_index.readers.web import FireCrawlWebReader

# Inicialize o FireCrawlWebReader com sua chave de API e o modo desejado
firecrawl_reader = FireCrawlWebReader(
    api_key="<your_api_key>",  # Substitua pela sua chave de API em https://www.firecrawl.dev/
    mode="scrape",  # "scrape", "crawl" ou "extract"
    params={"additional": "parameters"}  # Parâmetros adicionais opcionais
)

# Carregue documentos de uma URL específica
documents = firecrawl_reader.load_data(url="http://paulgraham.com/worked.html")
index = SummaryIndex.from_documents(documents)

# Defina o nível de log como DEBUG para obter saídas mais detalhadas
query_engine = index.as_query_engine()
response = query_engine.query("What did the author do growing up?")
display(Markdown(f"<b>{response}</b>"))
```
