Installation
pip install firecrawl-py llama-index llama-index-readers-web
Utilisation
FireCrawlWebReader prend en charge trois modes : scrape pour une page unique, crawl pour un site et extract pour les données structurées.
Utiliser Firecrawl pour collecter l’intégralité d’un site
from llama_index.readers.web import FireCrawlWebReader
from llama_index.core import SummaryIndex
import os
# Initialiser FireCrawlWebReader pour explorer un site web
firecrawl_reader = FireCrawlWebReader(
api_key="<your_api_key>", # Remplacez par votre clé API depuis https://www.firecrawl.dev/
mode="crawl", # « scrape », « crawl » ou « extract »
params={"additional": "parameters"} # Paramètres supplémentaires optionnels
)
# Définir la variable d’environnement pour la clé virtuelle
os.environ["OPENAI_API_KEY"] = "<OPENAI_API_KEY>"
# Charger des documents à partir de l’URL d’une page unique
documents = firecrawl_reader.load_data(url="http://paulgraham.com/")
index = SummaryIndex.from_documents(documents)
# Régler la journalisation sur DEBUG pour obtenir des sorties plus détaillées
query_engine = index.as_query_engine()
response = query_engine.query("What did the author do growing up?")
display(Markdown(f"<b>{response}</b>"))
Utiliser Firecrawl pour récupérer une seule page
from llama_index.readers.web import FireCrawlWebReader
# Initialisez FireCrawlWebReader avec votre clé API et le mode souhaité
firecrawl_reader = FireCrawlWebReader(
api_key="<your_api_key>", # Remplacez par votre clé API obtenue sur https://www.firecrawl.dev/
mode="scrape", # « scrape », « crawl » ou « extract »
params={"additional": "parameters"} # Paramètres supplémentaires facultatifs
)
# Chargez des documents à partir d’une URL spécifiée
documents = firecrawl_reader.load_data(url="http://paulgraham.com/worked.html")
index = SummaryIndex.from_documents(documents)
# Réglez le niveau de journalisation sur DEBUG pour obtenir des sorties plus détaillées
query_engine = index.as_query_engine()
response = query_engine.query("What did the author do growing up?")
display(Markdown(f"<b>{response}</b>"))

