Choisissez votre langue
Formation Web Scraping avec Python et Scrapy
Plus de 2 millions d'étudiants dans le monde

Formation Web Scraping avec Python et Scrapy

Apprenez à collecter des données à partir de n'importe quel site web à l'aide de Python et Scrapy — l'un des frameworks d'extraction de données web les plus puissants disponibles. Ce cours vous guide de la configuration de l'environnement jusqu'à la création de spiders prêts pour la production qui gèrent la pagination, les mesures anti-robots et les pages rendues par JavaScript. À la fin, vous disposerez d'un projet de portfolio et des compétences pratiques pour automatiser la collecte de données à grande échelle.

Dedika pour les entreprises

Ce que vous allez apprendre:

  • Configurez un environnement de développement professionnel Python et Scrapy à partir de zéro.

  • Créez des spiders qui suivent les liens de pagination et explorent automatiquement des sites web complets.

  • Extrayez, nettoyez et stockez des données structurées dans des fichiers CSV, JSON, SQLite et MongoDB.

  • Appliquez la rotation de proxy, l'usurpation d'agent utilisateur et AutoThrottle pour contourner les défenses anti-extraction courantes.

  • Utilisez l'intégration Playwright pour extraire les pages rendues par JavaScript et les applications monopages.

  • Concevez des projets d'extraction de bout en bout avec des pipelines réutilisables, des schémas d'articles et une planification automatisée.

Comment vous étudiez de façon pratique Formation Web Scraping avec Python et Scrapy

Comment vous pratiquez Formation Web Scraping avec Python et Scrapy

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 37 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Configuration de l'environnement Python et Scrapy

  • Leçon 1 • Environnements virtuels pour les projets Python

    Créez des environnements virtuels isolés pour gérer proprement les dépendances d'un projet. L'isolation empêche les conflits de paquets entre plusieurs projets.

  • Leçon 2 • Configuration de l'éditeur de code pour les projets Scrapy

    Configurez un éditeur de code avec le support Python, le linting et la coloration syntaxique. Un outillage adapté accélère le développement et réduit les erreurs de syntaxe.

  • Leçon 3 • Installation de Scrapy et de ses dépendances

    Installez Scrapy via pip et résolvez les problèmes de dépendances courants. Une installation propre confirme que l'environnement est prêt pour le développement d'araignées.

  • Leçon 4 • Installation et configuration de Python

    Installez Python et configurez les variables PATH pour un accès en ligne de commande. Une configuration correcte ici prévient les erreurs d'environnement tout au long du cours.

Chapitre 2Voir les détails

Fondamentaux du web pour les scrappers

  • Leçon 1 • Outils de développement du navigateur pour la recherche de scrapping

    Utilisez les outils de développement du navigateur pour inspecter les éléments, surveiller le trafic réseau et copier des sélecteurs. Ce flux de travail de recherche alimente directement la conception des araignées.

  • Leçon 2 • Expressions XPath pour la sélection avancée

    Écrivez des expressions XPath pour naviguer dans le DOM avec une plus grande flexibilité que le CSS seul. XPath gère des modèles de traversée complexes que le CSS ne peut pas exprimer.

  • Leçon 3 • Fonctionnement des requêtes et réponses HTTP

    Tracez le cycle de vie d'une requête HTTP du navigateur au serveur et retour. Ce modèle explique ce que Scrapy reproduit lors de la récupération des pages.

  • Leçon 4 • Sélecteurs CSS pour le ciblage des données

    Utilisez la syntaxe des sélecteurs CSS pour cibler précisément des éléments spécifiques dans un document HTML. Ces sélecteurs sont l'outil de ciblage principal dans les araignées Scrapy.

  • Leçon 5 • Structure HTML et DOM

    Lisez et interprétez des documents HTML comme des structures arborescentes imbriquées. Comprendre le DOM est essentiel pour écrire des sélecteurs CSS et XPath précis.

Chapitre 3Voir les détails

Construction de votre première araignée Scrapy

  • Leçon 1 • Exécution et débogage des araignées

    Exécutez les araignées avec la commande scrapy crawl et interprétez la sortie des logs. Les compétences de débogage réduisent le temps passé sur les araignées défectueuses.

  • Leçon 2 • Anatomie d'une classe d'araignée Scrapy

    Examinez la classe de base Spider ainsi que ses attributs et méthodes requis. Chaque araignée hérite de cette structure, donc sa maîtrise est fondamentale.

  • Leçon 3 • Extraction de données avec les sélecteurs

    Appliquez les sélecteurs CSS et XPath dans la méthode parse pour extraire du texte et des attributs. Une extraction précise est la compétence centrale de toute araignée.

  • Leçon 4 • Structure du projet Scrapy expliquée

    Générez un projet Scrapy et comprenez le rôle de chaque fichier généré. Connaître la structure évite les erreurs de placement de code et de configuration.

Chapitre 4Voir les détails

Éléments Scrapy et modélisation des données

  • Leçon 1 • Nettoyage des données avec les processeurs

    Écrivez des fonctions de processeur personnalisées pour nettoyer, convertir et normaliser les valeurs des champs. Un nettoyage des données au niveau du loader réduit la complexité du pipeline en aval.

  • Leçon 2 • Définition des éléments Scrapy

    Déclarez des classes Item avec des champs typés pour représenter les enregistrements extraits. Les Items imposent un schéma cohérent à travers toutes les araignées d'un projet.

  • Leçon 3 • Utilisation des ItemLoaders pour des données propres

    Appliquez les ItemLoaders pour automatiser le traitement des entrées et des sorties sur les valeurs des champs. Les chargeurs séparent la logique d'extraction de la logique de nettoyage pour une meilleure maintenabilité.

  • Leçon 4 • Validation des données extraites

    Ajoutez une validation au niveau des champs pour détecter les enregistrements mal formés avant qu'ils n'atteignent le stockage. Une validation précoce empêche les données corrompues d'entrer dans les pipelines.

Chapitre 5Voir les détails

Exploration de plusieurs pages et sites

  • Leçon 1 • Suivi des liens avec les requêtes Scrapy

    Générez des objets scrapy.Request depuis les méthodes parse pour ordonner au crawl de récupérer des URL supplémentaires. Le suivi de liens est le mécanisme derrière les crawls de sites complets.

  • Leçon 2 • Utilisation de CrawlSpider pour le crawl basé sur des règles

    Tirez parti de la sous-classe CrawlSpider et des objets Rule pour définir des modèles de suivi de liens de manière déclarative. Les Rules réduisent le code standard pour les sites structurés de grande taille.

  • Leçon 3 • Gestion de la profondeur et de la portée du crawl

    Configurez des limites de profondeur et des filtres d'URL pour que les crawls restent ciblés et efficaces. Le contrôle de la portée empêche les crawls incontrôlés qui gaspillent des ressources.

  • Leçon 4 • Stratégies de pagination

    Détectez et suivez les liens de page suivante à travers les schémas de pagination numérotée et par curseur. La gestion de la pagination permet d'extraire des ensembles de données complets.

  • Leçon 5 • Passage de données entre les requêtes

    Utilisez les dictionnaires cb_kwargs et meta pour transporter le contexte d'une requête à la suivante. Un contexte partagé permet l'assemblage d'enregistrements sur plusieurs pages.

Chapitre 6Voir les détails

Pipelines Scrapy et stockage des données

  • Leçon 1 • Exportation de données vers CSV et JSON

    Utilisez les exportateurs de flux intégrés de Scrapy pour écrire les éléments dans des fichiers plats. Les exportations en fichiers plats sont le chemin le plus rapide de l'araignée aux données utilisables.

  • Leçon 2 • Écriture de composants de pipeline personnalisés

    Construisez des classes de pipeline qui nettoient, dédupliquent ou enrichissent les éléments avant le stockage. Les pipelines personnalisés gèrent la logique que les exportateurs ne peuvent pas exprimer.

  • Leçon 3 • Stockage de données dans MongoDB

    Écrivez un pipeline qui insère des éléments dans une collection MongoDB à l'aide de PyMongo. Le stockage de documents convient aux données extraites avec des champs variables ou imbriqués.

  • Leçon 4 • Stockage de données dans une base de données SQL

    Connectez un pipeline à une base de données relationnelle et insérez les éléments ligne par ligne. Le stockage en base de données permet d'effectuer des requêtes et une gestion des données à long terme.

  • Leçon 5 • Compréhension de l'architecture du pipeline

    Tracez comment les éléments circulent des araignées à travers les composants du pipeline ordonnés. Comprendre ce flux est nécessaire pour concevoir des chaînes de traitement efficaces.

Chapitre 7Voir les détails

Gestion des mesures anti-scrapping

  • Leçon 1 • Compréhension des techniques de détection de bots

    Cataloguez les signaux côté serveur utilisés pour identifier le trafic automatisé. Connaître les méthodes de détection éclaire les contre-mesures appliquées dans les sections suivantes.

  • Leçon 2 • Limitation des requêtes avec AutoThrottle

    Activez l'extension AutoThrottle de Scrapy pour adapter le taux de requêtes aux temps de réponse du serveur. Un crawl poli réduit le risque de bannissement pour limitation de débit.

  • Leçon 3 • Rotation des user-agents et des en-têtes

    Configurez un middleware pour randomiser les chaînes user-agent et les en-têtes HTTP par requête. La rotation des en-têtes réduit l'empreinte qui déclenche la détection de bots.

  • Leçon 4 • Utilisation de la rotation de proxy

    Acheminez les requêtes via des pools de proxy rotatifs pour répartir le trafic sur plusieurs adresses IP. La rotation de proxy est la principale défense contre les bannissements basés sur l'IP.

  • Leçon 5 • Gestion des cookies et des sessions

    Contrôlez la gestion des cookies pour maintenir les sessions ou isoler les requêtes selon les besoins. Une bonne gestion des sessions empêche les blocages par écran de connexion et la détection basée sur les sessions.

Chapitre 8Voir les détails

Scrapping de pages rendues par JavaScript

  • Leçon 1 • Gestion du défilement infini et du chargement différé

    Automatisez les actions de défilement et déclenchez les événements de chargement différé pour exposer le contenu caché. Ces techniques complètent l'extraction des ensembles de données sur les pages modernes de type flux.

  • Leçon 2 • Identification du contenu rendu par JavaScript

    Distinguez le HTML rendu par le serveur du contenu rendu par le client avant de choisir une stratégie de scraping. Une identification correcte évite un effort gaspillé sur la mauvaise approche.

  • Leçon 3 • Compromis de performance de l'automatisation des navigateurs

    Comparez la vitesse, le coût en ressources et la fiabilité des navigateurs sans tête par rapport aux requêtes HTTP directes. Des décisions de compromis éclairées maintiennent les projets maintenables et efficaces.

  • Leçon 4 • Intégration de Scrapy avec Playwright

    Utilisez la bibliothèque scrapy-playwright pour effectuer le rendu JavaScript dans le pipeline de requêtes de Scrapy. L'intégration Playwright gère les sites où l'interception d'API n'est pas réalisable.

  • Leçon 5 • Interception directe des appels API

    Rétro-ingénieriez les requêtes API sous-jacentes qu'un navigateur effectue et appelez-les directement avec Scrapy. Les appels API directs sont plus rapides et plus stables que l'automatisation de navigateur.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Futurs analystes de données : besoin de jeux de données réels sans dépendre de fournisseurs tiers.

  • Passionnés de Python : prêts à dépasser les tutoriels et à construire quelque chose de véritablement utile.

  • Développeurs freelance : souhaitent proposer la collecte automatisée de données comme un service facturable.

  • Personnes en reconversion professionnelle : visent des postes dans le domaine des données ou du backend et ont besoin d'un projet concret pour leur portfolio.

  • Chercheurs et universitaires : doivent collecter des données web de manière répétée sans copier-coller manuel.

  • Propriétaires de petites entreprises : veulent surveiller leurs concurrents ou agréger des informations de marché de manière automatique.

Ce que disent nos élèves

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable au Maroc ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF