Crawlee : Construire des robots fiables et des outils d'automatisation des navigateurs avec Node.js

Introduction générale

Crawlee est un crawler web open source et une bibliothèque d'automatisation de navigateur développé par Apify , conçu pour l'environnement Node.js. Elle prend en charge JavaScript et TypeScript, et fonctionne avec des outils tels que Puppeteer, Playwright, Cheerio, JSDOM et d'autres pour fournir de puissantes fonctionnalités d'exploration de données et d'automatisation.Crawlee permet aux utilisateurs de construire des crawlers fiables qui extraient les données nécessaires pour AI, LLM, RAG, ou GPTs, et télécharger des fichiers HTML, PDF, JPG, PNG, etc. Conçu pour que les crawlers ressemblent davantage à des opérations humaines, il est capable de contourner les mécanismes anti-crawler modernes, prend en charge la rotation des agents et la gestion des sessions, et convient à toute une série de tâches complexes de crawling sur le web.

Crawlee for Python est ouvert aux utilisateurs précoces !

Crawlee:使用Node.js构建可靠的网络爬虫和浏览器自动化工具

 

Liste des fonctions

  • Interface unique pour l'exploration HTTP et l'exploration sans tête des navigateurs
  • Files d'attente persistantes pour l'exploration d'URL (breadth-first et depth-first)
  • Stockage de données et de fichiers enfichable
  • S'adapte automatiquement aux ressources du système
  • Rotation des agents et gestion des sessions intégrées
  • Le cycle de vie peut être personnalisé à l'aide de crochets
  • Outil CLI pour l'amorçage de projets
  • Mécanismes configurables de routage, de traitement des erreurs et de réessai
  • Fournir des fichiers Docker pour le déploiement
  • Écrit en TypeScript avec support générique
  • Prise en charge de HTTP2 et génération automatique d'en-têtes de requête de type navigateur
  • Analyseur HTML rapide intégré (Cheerio et JSDOM)
  • Prise en charge du crawl de l'API JSON
  • Rendu JavaScript et prise en charge des captures d'écran
  • Prise en charge des modes sans tête et avec tête
  • Génération automatique d'empreintes digitales de type humain
  • Interface unifiée utilisant Playwright et Puppeteer
  • Prend en charge Chrome, Firefox, Webkit, etc.

 

Utiliser l'aide

montage

Crawlee nécessite Node.js 16 ou plus. Vous pouvez rapidement installer et créer un exemple de crawler avec la commande suivante :

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

Si vous préférez procéder à une installation manuelle, vous pouvez utiliser la commande suivante :

npm install crawlee playwright

Ensuite, vous pouvez l'importer et l'utiliser dans votre projet :

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, // Uncomment to see the browser window
});
await crawler.run(['https://crawlee.dev']);

Fonction Opération Déroulement

  1. Création d'un projet de crawlerCrawlee CLI : Créez rapidement un nouveau projet de crawler à l'aide de Crawlee CLI, qui installe toutes les dépendances nécessaires et ajoute des exemples de code.
  2. Configuration du CrawlerDans votre projet, configurez la logique de traitement des requêtes du crawler, l'emplacement de stockage des données, les paramètres du proxy, etc.
  3. Exécution du crawlerCrawlee traite automatiquement la demande, récupère les données et stocke les résultats.
  4. stockage des donnéesCrawlee stocke par défaut les données dans le répertoire de travail actuel, dans le fichier ./storage ce répertoire peut être remplacé par un fichier de configuration.
  5. Fonctionnalité étendueLes résultats de l'analyse sont présentés dans le tableau suivant : ajouter des crochets personnalisés, des mécanismes de gestion des erreurs et des politiques de relance si nécessaire pour assurer la stabilité et la fiabilité du crawler.

Gestion des procurations et des sessions

Crawlee intègre la rotation des proxy et la gestion des sessions pour garantir que le crawler ne sera pas bloqué par le site web cible pendant le processus de crawling. La liste de proxy et les paramètres de session peuvent être définis via un fichier de configuration pour une rotation et une gestion automatiques.

déploiements

Crawlee fournit des fichiers Docker pour faciliter le déploiement des crawlers dans le nuage ou dans d'autres environnements. Les conteneurs Docker peuvent être construits et exécutés avec les commandes suivantes :

docker build -t my-crawler .
docker run my-crawler
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...