Pular para o conteúdo principal

Pré-requisitos

Instale o SDK

dependencies {
    implementation("com.firecrawl:firecrawl-java:1.2.0")
}

Fazer uma busca na web

import com.firecrawl.client.FirecrawlClient;
import com.firecrawl.models.SearchData;
import com.firecrawl.models.SearchOptions;

public class Main {
    public static void main(String[] args) {
        FirecrawlClient client = FirecrawlClient.builder()
            .apiKey("fc-YOUR-API-KEY")
            .build();

        SearchData results = client.search(
            "firecrawl web scraping",
            SearchOptions.builder().limit(5).build()
        );

        if (results.getWeb() != null) {
            for (var result : results.getWeb()) {
                System.out.println(result.get("title") + " - " + result.get("url"));
            }
        }
    }
}

Fazer scraping de uma página

import com.firecrawl.models.Document;

Document doc = client.scrape("https://example.com");
System.out.println(doc.getMarkdown());
{
  "markdown": "# Example Domain\n\nThis domain is for use in illustrative examples...",
  "metadata": {
    "title": "Example Domain",
    "sourceURL": "https://example.com"
  }
}

Interagir com uma página

Abra uma sessão do navegador, execute código Playwright nela e feche-a ao terminar:
import com.firecrawl.models.ScrapeOptions;
import com.firecrawl.models.BrowserExecuteResponse;
import java.util.List;

Document doc = client.scrape("https://www.amazon.com",
    ScrapeOptions.builder().formats(List.of((Object) "markdown")).build());
String scrapeId = (String) doc.getMetadata().get("scrapeId");

BrowserExecuteResponse run = client.interact(scrapeId,
    "const title = await page.title(); console.log(title);");
System.out.println(run.getStdout());

client.stopInteractiveBrowser(scrapeId);

Variável de ambiente

Em vez de passar apiKey diretamente, defina a variável de ambiente FIRECRAWL_API_KEY:
export FIRECRAWL_API_KEY=fc-YOUR-API-KEY
FirecrawlClient client = FirecrawlClient.fromEnv();

Próximos passos

Documentação de busca

Fazer uma busca na web e obter o conteúdo completo da página

Documentação de scraping

Todas as opções de scraping, incluindo formatos, ações e proxies

Documentação para interagir

Clique, preencha formulários e extraia conteúdo dinâmico

Referência do SDK Java

Referência completa do SDK com rastreamento, map, extração em lote e mais