Elixir
Découvrez Firecrawl en Elixir. Effectuez des recherches, du scraping et interagissez avec les données web à l’aide du SDK officiel.
- Elixir 1.14+ et OTP 25+
- Une clé API Firecrawl — obtenez-en une gratuitement
Ajoutez firecrawl à votre mix.exs :
defp deps do
[
{:firecrawl, "~> 1.0"}
]
endConfigurez votre clé API dans config/config.exs :
config :firecrawl, api_key: System.get_env("FIRECRAWL_API_KEY"){:ok, result} = Firecrawl.search_and_scrape(query: "firecrawl web scraping", limit: 5)
for entry <- result.body["data"]["web"] do
IO.puts("#{entry["title"]} - #{entry["url"]}")
end{:ok, result} = Firecrawl.scrape_and_extract_from_url(url: "https://example.com")
IO.puts(result.body["data"]["markdown"])Scrapez une page, puis continuez à l’utiliser via l’API de session de navigateur.
{:ok, scrape} = Firecrawl.scrape_and_extract_from_url(
url: "https://www.amazon.com",
formats: ["markdown"]
)
scrape_id = get_in(scrape.body, ["data", "metadata", "scrapeId"])
# Utiliser l'API REST pour interact (basé sur des prompts)
headers = [
{"Authorization", "Bearer #{Application.get_env(:firecrawl, :api_key)}"},
{"Content-Type", "application/json"}
]
{:ok, _} = Req.post(
"https://api.firecrawl.dev/v2/scrape/#{scrape_id}/interact",
json: %{prompt: "Search for iPhone 16 Pro Max"},
headers: headers
)
{:ok, response} = Req.post(
"https://api.firecrawl.dev/v2/scrape/#{scrape_id}/interact",
json: %{prompt: "Click on the first result and tell me the price"},
headers: headers
)
IO.inspect(response.body)
# Arrêter la session
Req.delete(
"https://api.firecrawl.dev/v2/scrape/#{scrape_id}/interact",
headers: headers
)Définissez FIRECRAWL_API_KEY plutôt que de la coder en dur :
export FIRECRAWL_API_KEY=fc-YOUR-API-KEYDocumentation scraping
Toutes les options de scraping, y compris les formats, les actions et les proxies
Documentation recherche
Recherchez sur le web et obtenez le contenu complet de la page
Documentation Interact
Cliquez, remplissez des formulaires et extrayez du contenu dynamique
Référence du SDK Elixir
Référence complète du SDK avec crawl, cartographie, extraction par lot et plus encore
Was this page helpful?Suggest editsRaise issue