Rust
Découvrez Firecrawl en Rust. Effectuez des recherches, scrapez et interagissez avec les données du Web à l’aide du SDK officiel.
- Rust 1.70+ avec Cargo
- Une clé API Firecrawl — obtenez-en une gratuitement
Ajoutez firecrawl à votre Cargo.toml :
[dependencies]
firecrawl = "2"
tokio = { version = "1", features = ["full"] }
serde_json = "1"use firecrawl::{Client, SearchOptions};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new("fc-YOUR-API-KEY")?;
let results = client.search(
"firecrawl web scraping",
SearchOptions { limit: Some(5), ..Default::default() },
).await?;
if let Some(web) = results.data.web {
for item in web {
if let firecrawl::SearchResultOrDocument::WebResult(r) = item {
println!("{} - {}", r.url, r.title.unwrap_or_default());
}
}
}
Ok(())
}let doc = client.scrape("https://example.com", None).await?;
println!("{}", doc.markdown.unwrap_or_default());Scrapez une page afin d’obtenir un scrapeId, puis utilisez l’API Interact pour contrôler la session de navigateur :
use firecrawl::{Client, ScrapeOptions, Format, ScrapeExecuteOptions};
let doc = client.scrape(
"https://www.amazon.com",
ScrapeOptions {
formats: Some(vec![Format::Markdown]),
..Default::default()
},
).await?;
let scrape_id = doc.metadata
.as_ref()
.and_then(|m| m.scrape_id.as_deref())
.expect("scrapeId not found");
// Envoyer un prompt pour interagir avec la page
let run = client.interact(
scrape_id,
ScrapeExecuteOptions {
prompt: Some("Search for iPhone 16 Pro Max".to_string()),
..Default::default()
},
).await?;
let run = client.interact(
scrape_id,
ScrapeExecuteOptions {
prompt: Some("Click on the first result and tell me the price".to_string()),
..Default::default()
},
).await?;
println!("{:?}", run.output);
// Fermer la session
client.stop_interaction(scrape_id).await?;Définissez FIRECRAWL_API_KEY au lieu de passer directement la clé :
export FIRECRAWL_API_KEY=fc-YOUR-API-KEYlet api_key = std::env::var("FIRECRAWL_API_KEY")?;
let client = Client::new(api_key)?;Documentation recherche
Recherchez sur le web et obtenez le contenu complet de la page
Documentation Scrape
Toutes les options de scrape, y compris les formats, les actions et les proxys
Documentation Interact
Cliquez, remplissez des formulaires et extrayez du contenu dynamique
Référence du SDK Rust
Référence complète du SDK avec crawl, cartographie, extraction par lot et bien plus encore
Was this page helpful?Suggest editsRaise issue