Eine leistungsstarke Node.js-Bibliothek für Web Scraping und Browserautomatisierung, die JavaScript und TypeScript unterstützt und Daten für KI, LLM, RAG usw. extrahieren kann.

Apache-2.0TypeScriptcrawleeapify 18.6k Last Updated: July 28, 2025

Crawlee - Modernes Web-Crawling- und Browser-Automatisierungs-Framework

Projektübersicht

Crawlee ist eine leistungsstarke Node.js-Bibliothek für Web-Crawling und Browser-Automatisierung, die von Apify entwickelt wurde und speziell für die Erstellung zuverlässiger Web-Crawler entwickelt wurde. Das Projekt unterstützt JavaScript und TypeScript und bietet hochwertige Datenextraktionsdienste für Anwendungen wie KI, Large Language Models (LLM) und Retrieval-Augmented Generation (RAG).

GitHub-Adresse: https://github.com/apify/crawlee

Kernfunktionsmerkmale

🚀 Einheitliche Crawling-Schnittstelle

  • Multi-Engine-Unterstützung: Einheitliche Schnittstelle unterstützt HTTP-Anfragen und Headless-Browser-Crawling
  • Flexible Auswahl: Auswahl der geeigneten Crawling-Methode je nach Bedarf

🔄 Intelligentes Warteschlangenmanagement

  • Persistente Warteschlangen: Unterstützung von URL-Crawling-Warteschlangen mit Breiten- und Tiefensuche
  • Automatische Skalierung: Automatische Anpassung der Crawling-Größe basierend auf Systemressourcen

💾 Flexibles Speichersystem

  • Multi-Format-Unterstützung: Plug-in-fähige Speicherung von Tabellendaten und Dateien
  • Lokal/Cloud: Standardmäßige Speicherung im lokalen ./storage-Verzeichnis, Unterstützung für Cloud-Speicherung

🔒 Anti-Detection auf Enterprise-Niveau

  • Proxy-Rotation: Integrierte Proxy-Rotation und Sitzungsverwaltung
  • Humanisierte Simulation: Standardkonfiguration simuliert menschliches Verhalten und umgeht moderne Bot-Erkennung
  • Fingerabdruck-Fälschung: Automatische Generierung von TLS-Fingerabdrücken und Anfrage-Headern, die echten Browsern ähneln

🛠 Entwicklerfreundlich

  • Native TypeScript-Unterstützung: Vollständige Typdefinitionen und generische Unterstützung
  • CLI-Tool: Bietet ein Gerüst für die schnelle Erstellung von Projekten
  • Lebenszyklus-Hooks: Anpassbare Ereignisbehandlung für den Lebenszyklus
  • Docker-Ready: Integriertes Dockerfile für einfache Bereitstellung

Unterstützte Crawling-Methoden

HTTP-Crawling

  • Hohe Leistung: Zero-Konfigurations-HTTP2-Unterstützung, einschließlich Proxys
  • Intelligente Analyse: Integrierte Cheerio- und JSDOM-Schnell-HTML-Parser
  • API-freundlich: Unterstützt auch das Crawlen von JSON-APIs

Browser-Automatisierung

  • Mehrere Browser: Unterstützt Chrome, Firefox, Webkit und andere Browser
  • JavaScript-Rendering: Verarbeitung dynamischer Inhalte und Single-Page-Anwendungen
  • Screenshot-Funktion: Unterstützung für Seitenscreenshots
  • Headless/Headful-Modus: Flexible Auswahl des Ausführungsmodus
  • Einheitliche Schnittstelle: Playwright und Puppeteer verwenden die gleiche API-Schnittstelle

Schnellstart

Projekt mit der CLI erstellen

npx crawlee create my-crawler
cd my-crawler
npm start

Basis-Beispielcode

import { PlaywrightCrawler, Dataset } from 'crawlee';

const crawler = new PlaywrightCrawler({
    async requestHandler({ request, page, enqueueLinks, log }) {
        const title = await page.title();
        log.info(`Title of ${request.loadedUrl} is '${title}'`);
        await Dataset.pushData({ title, url: request.loadedUrl });
        await enqueueLinks();
    },
    // headless: false,
});


await crawler.run(['https://crawlee.dev']);

Abhängigkeiten installieren

npm install crawlee playwright

Technische Architektur

Kernmodule

  • @crawlee/core: Kernfunktionsmodul
  • @crawlee/types: TypeScript-Typdefinitionen
  • @crawlee/utils: Nützliche Hilfsfunktionen

Unterstützte Bibliotheken und Tools

  • Playwright: Moderne Browser-Automatisierung
  • Puppeteer: Chrome/Chromium-Automatisierung
  • Cheerio: Schnelle HTML-Analyse
  • JSDOM: DOM-Manipulation und -Analyse

Bereitstellung und Integration

Lokale Entwicklung

  • Standardmäßige Datenspeicherung im ./storage-Verzeichnis
  • Unterstützung für die Anpassung des Speicherorts über Konfigurationsdateien
  • Vollständige Konfigurationsanleitung und Dokumentationsunterstützung

Cloud-Bereitstellung

  • Apify-Plattform: Da Crawlee von Apify entwickelt wurde, kann es einfach auf der Apify-Cloud-Plattform bereitgestellt werden
  • Docker-Unterstützung: Integrierte Docker-Konfiguration, Unterstützung für containerisierte Bereitstellung
  • Plattformübergreifend: Kann in jeder Umgebung ausgeführt werden, die Node.js unterstützt

Versionsverwaltung

  • Stabile Version: Installation der stabilen Release-Version über npm
  • Beta-Version: Unterstützung für die Installation von Beta-Versionen zum Testen neuer Funktionen
npm install crawlee@3.12.3-beta.13

Anwendungsfälle

Data Science und KI

  • Machine-Learning-Datensätze: Sammeln von Trainingsdaten für KI-Modelle
  • RAG-Systeme: Bereitstellung einer Wissensbasis für Retrieval-Augmented Generation-Systeme
  • LLM-Training: Sammlung von Vortrainingsdaten für Large Language Models

Geschäftsanwendungen

  • Wettbewerbsanalyse: Überwachung der Produkte und Preisinformationen von Wettbewerbern
  • Marktforschung: Sammlung von Branchentrends und Marktdaten
  • Content-Aggregation: Automatisierte Sammlung von Nachrichten, Artikeln usw.

Technische Überwachung

  • Website-Überwachung: Regelmäßige Überprüfung von Website-Änderungen
  • Preisverfolgung: Überwachung von E-Commerce-Produktpreisen
  • Datensicherung: Regelmäßige Sicherung wichtiger Webseiteninhalte

Zusammenfassung

Crawlee ist ein umfassendes, modern gestaltetes Web-Crawling-Framework, das sich besonders für Enterprise-Anwendungen eignet, die hohe Zuverlässigkeit und Anti-Detection-Funktionen erfordern. Sein einheitliches API-Design, seine leistungsstarken Anti-Detection-Funktionen und sein umfassendes Ökosystem machen es zur idealen Wahl für moderne Datenerfassungsprojekte. Ob es darum geht, Daten für KI-Projekte zu sammeln oder Business-Intelligence-Analysen durchzuführen, Crawlee bietet eine stabile und zuverlässige Lösung.

Star History Chart