Bun
Utilisez Firecrawl avec Bun pour créer des serveurs rapides de scraping web et de recherche.
- Bun 1.0+
- Une clé API Firecrawl — obtenez-en une gratuitement
bun add firecrawlAjoutez votre clé API à .env :
FIRECRAWL_API_KEY=fc-YOUR-API-KEYBun dispose d’un serveur HTTP intégré. Créez index.ts :
import { Firecrawl } from "firecrawl";
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
Bun.serve({
port: 3000,
async fetch(req) {
const url = new URL(req.url);
if (req.method === "POST" && url.pathname === "/search") {
const { query } = await req.json();
const results = await firecrawl.search(query, { limit: 5 });
return Response.json(results);
}
return new Response("Not found", { status: 404 });
},
});
console.log("Server running on port 3000");Exécutez ceci :
bun run index.tsAjoutez une route /scrape sur le même serveur :
if (req.method === "POST" && url.pathname === "/scrape") {
const { url: targetUrl } = await req.json();
const result = await firecrawl.scrape(targetUrl);
return Response.json(result);
}Utilisez interact pour contrôler une session de navigateur en direct : cliquez sur des boutons, remplissez des formulaires et extrayez du contenu dynamique.
if (req.method === "POST" && url.pathname === "/interact") {
const { url: targetUrl } = await req.json();
const result = await firecrawl.scrape(targetUrl, { formats: ['markdown'] });
const scrapeId = result.metadata?.scrapeId;
await firecrawl.interact(scrapeId, { prompt: 'Search for iPhone 16 Pro Max' });
const response = await firecrawl.interact(scrapeId, { prompt: 'Click on the first result and tell me the price' });
await firecrawl.stopInteraction(scrapeId);
return Response.json({ output: response.output });
}Utilisez Firecrawl dans un script Bun autonome :
import { Firecrawl } from "firecrawl";
const app = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const results = await app.search("firecrawl web scraping", { limit: 5 });
console.log(results);bun run search.tsDocumentation Scrape
Toutes les options de scrape, y compris les formats, les actions et les proxys
Documentation recherche
Recherche sur le web et obtention du contenu intégral des pages
Documentation Interact
Cliquer, remplir des formulaires et extraire du contenu dynamique
Référence du SDK Node
Référence complète du SDK avec crawl, cartographie, extraction par lot, et plus encore
Was this page helpful?Suggest editsRaise issue