Express
Utilisez Firecrawl avec Express pour créer des API de scraping web et de recherche.
- Node.js 18+
- Une clé API Firecrawl — obtenez-en une gratuitement
npm install express firecrawlAjoutez votre clé API à .env :
FIRECRAWL_API_KEY=fc-YOUR-API-KEYimport express from "express";
import { Firecrawl } from "firecrawl";
const app = express();
app.use(express.json());
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
app.post("/search", async (req, res) => {
try {
const { query } = req.body;
const results = await firecrawl.search(query, { limit: 5 });
res.json(results);
} catch (error) {
res.status(500).json({ error: error.message });
}
});
app.listen(3000, () => console.log("Server running on port 3000"));app.post("/scrape", async (req, res) => {
try {
const { url } = req.body;
const result = await firecrawl.scrape(url);
res.json(result);
} catch (error) {
res.status(500).json({ error: error.message });
}
});Utilisez interact pour contrôler une session de navigateur active — cliquer sur des boutons, remplir des formulaires et extraire du contenu dynamique.
app.post("/interact", async (req, res) => {
try {
const { url } = req.body;
const result = await firecrawl.scrape(url, { 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);
res.json({ output: response.output });
} catch (error) {
res.status(500).json({ error: error.message });
}
});curl -X POST http://localhost:3000/search \
-H "Content-Type: application/json" \
-d '{"query": "firecrawl web scraping"}'Documentation Scrape
Toutes les options de scrape, y compris les formats, les actions et les proxies
Documentation recherche
Rechercher sur le web et obtenir le contenu complet 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, etc.
Was this page helpful?Suggest editsRaise issue