Web Scraper
Présentation générale
Extraire le contenu et les données des sites web en utilisant diverses techniques, notamment le crawling, le scraping et l'extraction de données structurées.
Quand l'utiliser
- Extraire du contenu textuel des pages web
- Crawler des sites web complets
- Collecter des données structurées
- Rechercher et rassembler des informations
- Surveiller les changements sur un site
- Extraire des tableaux et des listes
Outils disponibles
Extraction de contenu
// Use extract_content_from_websites for structured extraction
// Supports batch processing of multiple URLs
// Returns JSON format with extracted content
Format des tâches
{
tasks: [
{
url: "https://example.com",
prompt: "Extract specific information",
task_name: "optional_name"
}
]
}
Modèles d'utilisation
Extraction simple de contenu
// Extract main content from a page
const result = await extract_content_from_websites({
tasks: [{
url: "https://news.example.com/article",
prompt: "Extract the title, author, date, and main content"
}]
});
Traitement par lot d'URL
// Process multiple URLs in parallel
const urls = [
"https://site.com/page1",
"https://site.com/page2",
"https://site.com/page3"
];
const results = await extract_content_from_websites({
tasks: urls.map((url, i) => ({
url,
prompt: "Extract all product information, prices, and descriptions",
task_name: `product_${i}`
}))
});
Extraction de données
// Extract structured data like prices, reviews, specifications
const data = await extract_content_from_websites({
tasks: [{
url: "https://ecommerce.example.com/products",
prompt: "Extract product name, price, rating, and availability for all products listed"
}]
});
Modes d'extraction
Mode automatique (par défaut)
- Tente d'abord une requête HTTP GET
- Bascule au rendu navigateur pour les pages CSR
- Idéal pour la plupart des sites web
Mode curl uniquement
- Requêtes HTTP directes rapides
- Idéal pour les pages HTML statiques
- Peut échouer sur les sites lourdement basés sur JavaScript
Mode navigateur uniquement
- Rendu navigateur complet
- Gère le contenu dynamique
- Plus lent mais plus exhaustif
Bonnes pratiques
- Commencer par des extractions plus simples avant des modèles complexes
- Utiliser des prompts spécifiques pour un scraping ciblé
- Respecter les conditions d'utilisation du site
- Ajouter des délais entre les requêtes lors du scraping de plusieurs pages
- Gérer les erreurs correctement avec try/catch
Gestion des données
- Retourne un format JSON pour un traitement facile
- Gère efficacement les opérations par lot
- Supporte la pagination si nécessaire
- Maintient la structure des données dans les résultats