Java
Get started with Firecrawl in Java. Search, scrape, and interact with web data using the official SDK.
Prerequisites
- Java 11+
- A Firecrawl API key — get one free
Install the SDK
dependencies {
implementation("com.firecrawl:firecrawl-java:1.2.0")
}Search the 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"));
}
}
}
}Scrape a page
import com.firecrawl.models.Document;
Document doc = client.scrape("https://example.com");
System.out.println(doc.getMarkdown());Interact with a page
Open a browser session, run Playwright code against it, and close it when done:
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);Environment variable
Instead of passing apiKey directly, set the FIRECRAWL_API_KEY environment variable:
export FIRECRAWL_API_KEY=fc-YOUR-API-KEYFirecrawlClient client = FirecrawlClient.fromEnv();Next steps
Was this page helpful?Suggest editsRaise issue