# Extrair da web

> Busque resultados do Google, o texto de uma página ou site, itens de feeds RSS ou Atom ou posts do TikTok, e envie tudo em JSON para nós de IA e de lista.

Source: https://nodaro.ai/pt-BR/docs/nodes/automate/web-scrape

O nó **Extrair da web** (Web Scrape) busca conteúdo na web e o retorna como uma lista de itens em JSON. Ele tem quatro origens: resultados de pesquisa do Google, o texto de uma página da web ou de um site inteiro, os itens de um feed RSS ou Atom e os posts recentes de um perfil do TikTok. Conecte o resultado a um nó [**Prompt**](https://nodaro.ai/docs/nodes/automate/prompt) para resumi-lo ou reescrevê-lo, ou ao [**Extrair campo** (Extract Field)](https://nodaro.ai/docs/nodes/automate/extract-field) para executar uma geração por item.

- Found in: Automate › Get Content
- Output: data
- API type: `web-scrape`

## Quando usar
- Trazer os resultados de pesquisa de uma palavra-chave para um workflow de conteúdo.
- Ler uma página da web ou um site em Markdown e deixar um nó Prompt resumir o texto ou extrair fatos dele.
- Ler os itens mais novos de um site de notícias, de um blog ou de um canal do YouTube, com agendamento.
- Coletar os posts recentes de um perfil do TikTok para análise ou para novas ideias.

## Início rápido
### Adicionar o nó
Pressione Tab no canvas e escolha **Automatizar › Coleta de conteúdo › Extrair da web**.

### Escolher uma origem
Abra o painel de configurações, escolha uma **Origem** e preencha os campos dela, por exemplo uma **Consulta** para o Google Search. O botão **Executar** mostra o preço dessa origem.

### Executar
Clique em **Executar**. Os primeiros itens aparecem no nó, e a aba **Resultados** do painel de configurações lista todos eles.

### Usar os itens
Conecte a saída **JSON** a um nó [Prompt](https://nodaro.ai/docs/nodes/automate/prompt), que lê o JSON como texto, ou ao [Extrair campo](https://nodaro.ai/docs/nodes/automate/extract-field) para tirar um campo de cada item. No nó Prompt, deixe o **Prompt do usuário** vazio e escreva a tarefa em **Instruções (prompt do sistema)**.

Workflow: Toda manhã, o Gatilho agendado executa o workflow inteiro: o Extrair da web lê um feed de notícias, um nó Prompt escreve um resumo e o Publicar no Telegram envia esse resumo para um canal.

- Extrair da web → Prompt (prompt)
- Prompt → Publicar no Telegram

## Origens
| Origem | O que retorna | Campos |
| --- | --- | --- |
| **Google Search** | Até 10 resultados de pesquisa para uma consulta | **Consulta**. **Máximo de resultados**, de 1 a 10, padrão 5. **Código do país**, um código de 2 letras como `us`, para adaptar os resultados a um país. |
| **Conteúdo do site (Markdown)** | O texto de uma página, ou de até 20 páginas de um site, em Markdown | **URL inicial**, o endereço como você o digita em um navegador. O `https://` é opcional. **Modo de rastreamento**: **Página única** (o padrão) ou **Rastreamento do site, até 20 páginas**, que segue os links do site a partir do endereço inicial. |
| **Feed RSS** | Os itens de um feed RSS ou Atom | **URL do feed**, com ou sem `https://`. **Limite de resultados**, de 1 a 50, padrão 10. |
| **TikTok** | Os posts recentes de um perfil, ou um único post | **URL do perfil ou do post**, com ou sem `https://`. **Limite de resultados**, de 1 a 20, padrão 10. |

Todo campo de texto aceita `{}`. Quando um nó está conectado à entrada **URL / pesquisa**, o texto dele substitui `{}`. Assim, um nó [**Texto** (Text)](https://nodaro.ai/docs/nodes/automate/text) ou [**Lista** (List)](https://nodaro.ai/docs/nodes/automate/list) pode definir a consulta ou o endereço.

## Feeds RSS e Atom
A origem **Feed RSS** lê os dois formatos de feed: RSS 2.0, com as versões mais antigas 0.9x e 1.0, e Atom. Isso inclui os feeds de canais do YouTube (`https://www.youtube.com/feeds/videos.xml?channel_id=...`), os feeds `releases.atom` do GitHub e os feeds que a maioria das plataformas de blog publica.

Todo item tem os mesmos cinco campos, qualquer que seja o formato do feed:

| Campo | Contém |
| --- | --- |
| `title` | O título do item |
| `url` | O link do item. Fica vazio quando o item não tem link. |
| `description` | O resumo ou o conteúdo do item. Pode conter HTML. |
| `pubDate` | A data de publicação, no formato ISO 8601 quando a data pode ser lida |
| `guid` | O ID único do item, ou o link dele quando não tem ID |

Quando o servidor do feed tem um problema temporário, o nó tenta de novo, com até três requisições em 30 segundos. Uma execução que esgota o tempo falha com o erro “RSS fetch timed out”. Um endereço que retorna algo que não é um feed, como uma página da web ou uma página de erro, faz a execução falhar. O erro diz o que o endereço retornou.

## Resultados
Depois de uma execução, o nó mostra os primeiros itens. A aba **Resultados** do painel de configurações lista todos os itens, com as visualizações **Lista** e **JSON bruto** e os botões **Copiar JSON** e **Baixar JSON**. Cada item tem um link para a sua fonte, como a página do resultado de pesquisa, o item do feed ou o vídeo do TikTok. Confira um resultado lá antes de usá-lo como base.

A saída, **JSON**, é a lista de itens. Três formas comuns de usá-la:

- **Resumir ou reescrever.** Conecte a saída à entrada **Prompt** de um nó [Prompt](https://nodaro.ai/docs/nodes/automate/prompt). O JSON chega como texto. Deixe o **Prompt do usuário** vazio, para que o JSON seja o pedido, e escreva a tarefa em **Instruções (prompt do sistema)**.
- **Pegar um campo.** Conecte a saída ao [Extrair campo](https://nodaro.ai/docs/nodes/automate/extract-field), por exemplo para obter o `title` de cada item do feed como uma lista.
- **Executar uma vez por item.** Envie a lista de valores extraídos para um nó de geração, que é executado uma vez para cada valor. Veja [Listas e lotes](https://nodaro.ai/docs/concepts/lists-and-batching).

## Créditos
| Origem | Créditos por execução |
| --- | --- |
| Google Search | 33 |
| Conteúdo do site, página única | 11 |
| Conteúdo do site, rastreamento do site | 55 |
| Feed RSS | 11 |
| TikTok | 11 |

O botão **Executar** no nó, o preço ao lado de cada modo de rastreamento e o total da execução de um workflow mostram o preço que você paga.

- **Uma execução que falha é reembolsada por completo.**
- **Uma execução que não encontra nada é cobrada.** Ela foi concluída, então custa o preço da origem, e o nó guarda o último resultado bom ao lado do vazio. Na origem Feed RSS, um feed real sem itens conta como não encontrar nada.

## Rastreamentos longos
Um rastreamento de site segue até 20 páginas e muitas vezes leva vários minutos. No editor e na execução de um workflow, você não precisa fazer nada. O nó espera, e as páginas aparecem no nó quando o rastreamento termina. Se você reabrir o workflow depois que o rastreamento terminou em segundo plano, o resultado também estará lá.

Em uma instalação self-hosted, as origens Google Search, Conteúdo do site e TikTok precisam da chave de web scraping descrita em [Chaves de provedor](https://nodaro.ai/docs/self-hosting/provider-keys) ou de uma [conexão com o Nodaro Cloud](https://nodaro.ai/docs/self-hosting/cloud-connect). A origem Feed RSS não precisa de nenhuma das duas.

## Dicas
- **Comece com uma página.** Use **Página única** para conferir se um site retorna um texto útil antes de pagar por um **Rastreamento do site**.
- **Consulte periodicamente, com agendamento.** Adicione um [**Gatilho agendado** (Schedule Trigger)](https://nodaro.ai/docs/nodes/automate/schedule-trigger) ao workflow para ter um resumo diário ou um workflow movido a notícias.
- **Guarde só o que você precisa.** Extraia um campo, como `title`, antes de um nó que é executado uma vez por item, para que cada execução receba um texto curto e limpo.

## Pela API
`POST /v1/web-scrape` executa o nó por código. Um rastreamento de site pode levar mais tempo que o limite de cerca de 100 segundos de uma única requisição HTTP, então envie `"respondAsync": true` nos rastreamentos. A chamada responde na hora com um `jobId`, e você lê as páginas do job concluído com `GET /v1/jobs/:id`. Sem a flag, a requisição fica aberta até a extração terminar. Um rastreamento que dura mais que o limite da requisição tem a resposta cortada no caminho de volta, embora o job seja concluído e cobrado. Veja [Executar um único nó](https://nodaro.ai/docs/developers/api/nodes) e [Jobs](https://nodaro.ai/docs/developers/api/jobs).

## Frequently asked questions

### O que o nó “Extrair da web” pode buscar?

Resultados de pesquisa do Google, o texto de uma página da web ou de até 20 páginas de um site em Markdown, os itens de um feed RSS ou Atom e os posts recentes de um perfil do TikTok. Toda origem retorna uma lista de itens em JSON.

### Quantos créditos o nó “Extrair da web” custa?

Depende da origem. O “Google Search” custa 33 créditos por execução, uma página da web custa 11, um rastreamento de até 20 páginas de um site custa 55, um feed RSS ou Atom custa 11 e o TikTok custa 11. Uma execução que falha é reembolsada por completo.

### O nó “Extrair da web” consegue ler um site inteiro?

Sim. Escolha “Conteúdo do site (Markdown)” e defina o “Modo de rastreamento” como “Rastreamento do site”. O nó segue os links do site a partir do endereço inicial, até 20 páginas, e retorna cada página em Markdown.

### Como verifico um feed ou uma pesquisa todos os dias?

Adicione um nó “Gatilho agendado” ao workflow, defina o agendamento, por exemplo todos os dias às 9:00, e ative o agendamento. Cada execução agendada busca resultados novos e executa os nós que vêm depois do “Extrair da web”.

### O que acontece quando a extração não encontra nada?

A execução é concluída e cobrada, e o nó guarda o último resultado bom ao lado do vazio. Para um feed, um endereço que retorna algo que não é um feed faz a execução falhar, e os créditos são reembolsados.
