Pular para o conteúdo principal
POST
/
scrape
Raspar uma única URL e, opcionalmente, extrair informações usando um LLM
curl --request POST \
  --url https://api.firecrawl.dev/v1/scrape \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "onlyMainContent": true,
  "includeTags": [
    "<string>"
  ],
  "excludeTags": [
    "<string>"
  ],
  "maxAge": 0,
  "headers": {},
  "waitFor": 0,
  "mobile": false,
  "skipTlsVerification": false,
  "timeout": 30000,
  "parsePDF": true,
  "jsonOptions": {
    "schema": {},
    "systemPrompt": "<string>",
    "prompt": "<string>"
  },
  "actions": [
    {
      "type": "wait",
      "milliseconds": 2,
      "selector": "#my-element"
    }
  ],
  "location": {
    "country": "US",
    "languages": [
      "en-US"
    ]
  },
  "removeBase64Images": true,
  "blockAds": true,
  "proxy": "basic",
  "storeInCache": true,
  "formats": [
    "markdown"
  ],
  "changeTrackingOptions": {
    "modes": [
      "git-diff"
    ],
    "schema": {},
    "prompt": "<string>",
    "tag": null
  },
  "zeroDataRetention": false
}
'
{
  "success": true,
  "data": {
    "markdown": "<string>",
    "html": "<string>",
    "rawHtml": "<string>",
    "screenshot": "<string>",
    "links": [
      "<string>"
    ],
    "actions": {
      "screenshots": [
        "<string>"
      ],
      "scrapes": [
        {
          "url": "<string>",
          "html": "<string>"
        }
      ],
      "javascriptReturns": [
        {
          "type": "<string>",
          "value": "<unknown>"
        }
      ],
      "pdfs": [
        "<string>"
      ]
    },
    "metadata": {
      "title": "<string>",
      "description": "<string>",
      "language": "<string>",
      "sourceURL": "<string>",
      "keywords": "<string>",
      "ogLocaleAlternate": [
        "<string>"
      ],
      "<any other metadata> ": "<string>",
      "statusCode": 123,
      "error": "<string>"
    },
    "llm_extraction": {},
    "warning": "<string>",
    "changeTracking": {
      "previousScrapeAt": "2023-11-07T05:31:56Z",
      "changeStatus": "new",
      "visibility": "visible",
      "diff": "<string>",
      "json": {}
    }
  }
}
Observação: uma nova versão v2 desta API já está disponível, com recursos e desempenho aprimorados.

Autorizações

Authorization
string
header
obrigatório

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Corpo

application/json
url
string<uri>
obrigatório

URL a ser raspada

onlyMainContent
boolean
padrão:true

Retorne apenas o conteúdo principal da página, excluindo cabeçalhos, áreas de navegação, rodapés etc.

includeTags
string[]

Tags para incluir na saída.

excludeTags
string[]

Tags a serem excluídas da saída.

maxAge
integer
padrão:0

Retorna uma versão em cache da página se ela tiver menos que essa idade, em milissegundos. Se a versão em cache da página for mais antiga que esse valor, a página será raspada novamente. Se você não precisar de dados extremamente atualizados, ativar essa opção pode acelerar suas raspagens em até 500%. O padrão é 0, o que desativa o cache.

headers
object

Cabeçalhos a serem enviados com a requisição. Podem ser usados para enviar cookies, user-agent etc.

waitFor
integer
padrão:0

Defina um atraso, em milissegundos, antes de buscar o conteúdo, permitindo que a página tenha tempo suficiente para carregar.

mobile
boolean
padrão:false

Defina como true para emular a raspagem de dados a partir de um dispositivo móvel. Útil para testar páginas responsivas e gerar capturas de tela da versão mobile.

skipTlsVerification
boolean
padrão:false

Ignorar a verificação do certificado TLS ao fazer requisições

timeout
integer
padrão:30000

Tempo limite da requisição em milissegundos

parsePDF
boolean
padrão:true

Controla como os arquivos PDF são processados durante o scraping. Quando definido como true, o conteúdo do PDF é extraído e convertido para o formato Markdown, com cobrança baseada no número de páginas (1 crédito por página). Quando definido como false, o arquivo PDF é retornado codificado em base64, com uma tarifa fixa de 1 crédito no total.

jsonOptions
object

Objeto JSON de opções

actions
(Wait · object | Screenshot · object | Click · object | Write text · object | Press a key · object | Scroll · object | Scrape · object | Execute JavaScript · object | Generate PDF · object)[]

Ações a serem realizadas na página antes de extrair o conteúdo

location
object

Configurações de localização para a requisição. Quando especificadas, será usado um proxy apropriado, se disponível, e serão emuladas as configurações correspondentes de idioma e fuso horário. O padrão é "US" se não for especificado.

removeBase64Images
boolean
padrão:true

Remove todas as imagens em base64 da saída, que podem ser excessivamente longas. O texto alternativo (alt) da imagem permanece na saída, mas a URL é substituída por um espaço reservado.

blockAds
boolean
padrão:true

Habilita o bloqueio de anúncios e de pop-ups de cookies.

proxy
enum<string>

Especifica o tipo de proxy a ser usado.

  • basic: Proxies para scraping de sites sem ou com soluções anti-bot básicas. Rápido e geralmente funciona.
  • stealth: Proxies stealth para scraping de sites com soluções anti-bot avançadas. Mais lento, mas mais confiável em alguns sites. Custa até 5 créditos por requisição.
  • auto: O Firecrawl tentará fazer o scraping novamente automaticamente usando proxies stealth se o proxy basic falhar. Se a nova tentativa com stealth for bem-sucedida, 5 créditos serão cobrados pelo scraping. Se a primeira tentativa com basic for bem-sucedida, apenas o custo normal será cobrado.

Se você não especificar um proxy, o Firecrawl usará basic por padrão.

Opções disponíveis:
basic,
stealth,
auto
storeInCache
boolean
padrão:true

Se definido como true, a página será armazenada no índice e no cache do Firecrawl. Definir isso como false é útil se sua atividade de scraping puder levantar preocupações relacionadas à proteção de dados. O uso de alguns parâmetros associados a scraping sensível (ações, headers) fará com que esse parâmetro seja definido como false.

formats
enum<string>[]

Formatos a serem incluídos no resultado.

Opções disponíveis:
markdown,
html,
rawHtml,
links,
screenshot,
screenshot@fullPage,
json,
changeTracking
changeTrackingOptions
object

Opções de rastreio de mudanças (Beta). Aplicável somente quando 'changeTracking' estiver incluído em formatos. O formato 'markdown' também deve ser especificado ao usar o rastreio de mudanças.

zeroDataRetention
boolean
padrão:false

Se definido como true, isso ativará retenção zero de dados para este scrape. Para ativar esse recurso, entre em contato com [email protected]

Resposta

Resposta bem-sucedida

success
boolean
data
object