📚 Documentation toscrap

toscrap est une interface moderne et intuitive pour explorer, extraire et analyser des données web avec l'IA. Cette plateforme complète offre plusieurs outils spécialisés pour répondre à vos besoins en matière d'extraction de données web.

L'application utilise différents types de "graphes" (pipelines de traitement) pour l'extraction et l'analyse des données, le tout à travers une interface utilisateur élégante et facile à utiliser.

🚀 Installation

Pour installer et exécuter toscrap localement :

# Cloner le dépôt
git clone https://github.com/votre-utilisateur/toscrap.git
cd toscrap

# Installer les dépendances
npm install

# Configuration
cp .env.example .env.local
# Modifier les variables d'environnement dans .env.local selon vos besoins

# Lancer en développement
npm run dev

Pour déployer en production :

# Construire l'application
npm run build

# Démarrer en production
npm run start

🛠️ Outils disponibles

  • Smart Scraper

    Extraction de données structurées depuis une page web unique en utilisant le langage naturel pour décrire vos besoins.

  • Multi-Scraper

    Extraire des données de plusieurs URLs en parallèle avec une seule requête.

  • Depth Search

    Explorer un site en suivant les liens internes jusqu'à une profondeur définie pour extraire des informations de multiples pages.

  • Web Search

    Effectuer des recherches web enrichies par l'IA pour obtenir des réponses précises à vos questions.

  • Omni Search

    Recherche avancée avec analyse d'images et contenu multimédia.

  • Script Creator

    Générer des scripts Python pour automatiser le scraping et intégrer les résultats dans vos propres applications.

  • Authenticated Scraping

    Extraire des données de pages nécessitant une authentification, comme les sites avec login.

🧩 Exemples d'utilisation

Extraire des données d'une page web

  1. Accédez à la page "Smart Scraper" dans le dashboard
  2. Entrez l'URL de la page à scraper
  3. Formulez votre requête en langage naturel (ex: "Extraire le titre, le prix et la description de ce produit")
  4. Sélectionnez le fournisseur LLM
  5. Cliquez sur "Extraire les données"

Exploration en profondeur d'un site

  1. Accédez à la page "Depth Search" dans le dashboard
  2. Entrez l'URL de départ
  3. Définissez la profondeur d'exploration (1-3)
  4. Précisez votre requête et les informations à extraire
  5. Lancez l'exploration

🔄 Types de graphes

L'application utilise différents types de "graphes" (pipelines de traitement) pour l'extraction et l'analyse des données :

Type de GrapheDescription
SmartScraperGraphExtraction de données structurées d'une seule page
SmartScraperMultiGraphScraping parallèle de plusieurs URLs
DepthSearchGraphExploration récursive des liens d'un site
SearchGraphRecherche web avec extraction d'informations
OmniSearchGraphRecherche avancée avec analyse d'images
ScriptCreatorGraphGénération de scripts Python pour le scraping

⚙️ Configuration

toscrap offre plusieurs options de configuration pour s'adapter à vos besoins :

Configurations générales

  • Configuration du timeout pour les requêtes
  • Nombre de tentatives pour les extractions
  • Options de stockage des résultats
  • Mode d'authentification pour les pages protégées

Fournisseurs LLM supportés

  • OpenAI - Utilise les modèles GPT pour l'extraction de données
  • Groq - Alternative rapide pour le traitement des données
  • Azure - Intégration avec les services cloud Microsoft
  • Gemini - Modèles de Google pour l'analyse multimodale
  • Ollama - Exécution de modèles locaux pour plus de confidentialité

💾 Stockage des résultats

toscrap offre deux options principales pour stocker les résultats de vos extractions :

Stockage local

Les résultats peuvent être sauvegardés localement dans des fichiers JSON sur votre machine. Cette option est idéale pour les tests rapides et le développement.

Stockage Supabase

toscrap s'intègre avec Supabase pour stocker les résultats dans une base de données PostgreSQL. Cette option est recommandée pour les déploiements en production et le partage des résultats.

Pour configurer Supabase, vous devez renseigner vos identifiants dans les paramètres de l'application, puis activer l'option "Sauvegarder dans Supabase" lors de vos requêtes.

🔌 Configuration API

Par défaut, l'application se connecte à une API locale sur http://localhost:8000/api. Vous pouvez configurer une URL d'API différente dans les paramètres de l'application ou via les variables d'environnement :

  • NEXT_PUBLIC_API_URL: URL de l'API en mode local
  • NEXT_PUBLIC_PRODUCTION_API_URL: URL de l'API en mode production

Endpoints API disponibles

L'API expose les endpoints suivants :

  • /api/scrape - Extraction d'informations d'une page unique
  • /api/multi-scrape - Extraction de plusieurs pages simultanément
  • /api/depth-search - Exploration récursive d'un site web
  • /api/search - Recherche web et extraction des résultats
  • /api/omni-search - Recherche avancée avec analyse d'images
  • /api/generate-script - Génération de scripts Python
  • /api/authenticated-scrape - Scraping de pages avec authentification

📝 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus d'informations.