La technologie des robots d'exploration Web devient de plus en plus utile en tant que moyen pratique de collecter des informations en ligne et d'en extraire des informations utilisables. En utilisant un langage de programmation simple comme Python, vous pouvez explorer des sites Web complexes en utilisant un minimum de compétences en programmation.
"Writing Web Crawler in Python" est un excellent guide d'utilisation de Python pour explorer les données réseau. Il explique comment explorer les données des pages statiques et utiliser le cache pour gérer les serveurs. méthode de chargement. De plus, ce livre explique comment récupérer des données à l'aide d'URL AJAX et d'extensions Firebug, ainsi que d'autres informations sur les techniques de scraping telles que l'utilisation du rendu du navigateur, la gestion des cookies et la soumission de formulaires à partir de sites Web complexes protégés par des CAPTCHA. Extraire des données, etc. Ce livre utilise Scrapy pour créer un robot d'exploration Web avancé et explorer de vrais sites Web.
Recommandations associées : "Tutoriel vidéo Python"
"Écrire un robot d'exploration Web en Python" présente le contenu suivant :
Explorez le site Web en suivant les liens ;
Utilisez lxml pour extraire les données de la page
Créez un robot d'exploration threadé pour explorer la page en parallèle ; >
Cache le contenu téléchargé pour réduire la consommation de bande passante ; Analyse les sites Web qui s'appuient sur JavaScript Interagit avec les formulaires et les sessions Résout les problèmes de CAPTCHA des pages protégées ; 🎜>Ingénierie inverse des appels AJAX ;
Utilisez Scrapy pour créer des robots d'exploration avancés.
Qui lit ce livreCe livre est écrit pour les développeurs qui souhaitent créer des solutions fiables d'exploration de données. Ce livre suppose que les lecteurs ont une certaine connaissance de la programmation Python. expérience. Bien entendu, les lecteurs ayant de l'expérience dans le développement d'autres langages de programmation peuvent également lire ce livre et comprendre les concepts et principes qu'il implique.
À propos de l'auteur · · · · · ·Richard Lawson est originaire d'Australie et est diplômé de l'Université de Melbourne avec une spécialisation en informatique. Après avoir obtenu son diplôme, il a fondé une entreprise spécialisée dans l'exploration du Web, proposant du travail à distance à des entreprises dans plus de 50 pays. Il maîtrise l'espéranto, peut converser en chinois et en coréen et est activement impliqué dans les logiciels open source. Il étudie actuellement à l’Université d’Oxford et consacre son temps libre au développement de drones autonomes.
Table des matières · · · · · · ·Table des matières
Chapitre 1 Introduction au Web Crawler 11.1 Quand les robots d'exploration Web sont-ils utiles1
1.2 Les robots d'exploration Web sont-ils légaux2
1.3 Recherche de base3
1.3.1 Vérifiez le fichier robots.txt 3
1.3.2 Vérifier le plan du site4
1.3.3 Estimer la taille du site Internet5
1.3.4 Identifier la technologie utilisée sur le site Internet7
1.3.5 Trouver le propriétaire du site Web7
1.4 Écriture du premier robot d'exploration Web 8
1.4.1 Téléchargement de pages Web 9
1.4.2 Robot d'exploration du plan du site 12
1.4. 3 Crawler de traversée d'ID 13
1.4.4 Link Crawler 15
1.5 Résumé du chapitre 22
Chapitre 2 Capture de données2.1 Analyse des pages Web 23
2.2 Trois méthodes de scraping Web 26
2.2.1 Expression régulière 26
2.2.2 Beautiful Soup 28
2.2.3 Lxml 30
2.2.4 Comparaison des performances 32
2.2.5 Conclusion 35
2.2.6 Ajouter un rappel d'exploration pour le robot d'exploration de liens 35
2.3 Résumé de ceci chapitre 38
Chapitre 3 Mise en cache des téléchargements 393.1 Ajouter la prise en charge de la mise en cache pour le robot d'exploration de liens 39
3.2 Mise en cache disque 42
3.2 . 1. Implémentation 44
3.2.2 Test du cache 46
3.2.3 Économie d'espace disque 46
3.2.4 Nettoyage des données expirées 47
3.2.5 Inconvénients 48
3.3 Mise en cache de la base de données 49
3.3.1 Qu'est-ce que NoSQL50
3.3.2 Installation de MongoDB 50
3.3.3 Présentation de MongoDB 50
3.3.4 Implémentation du cache MongoDB 52
3.3.5 Compression 54
3.3.6 Test du cache 54
3.4 Résumé de ce chapitre 55
Chapitre 4 Téléchargement simultané 574.1 1 million de pages Web 57
4.2 Robot d'exploration en série 60
4.3 Robot d'exploration multithread 60
4.3.1 Fonctionnement des threads et des processus61
4.3.2 Implémentation61
4.3.3 Robot d'exploration multi-processus63
4.4 Performance67
4.5 Résumé de ce chapitre 68
Chapitre 5 Contenu dynamique 695.1 Exemples de pages Web dynamiques 69
5.2 Ingénierie inverse du Web dynamique Pages 72
5.3 Rendu de pages Web dynamiques 77
5.3.1 PyQt ou PySide 78
5.3.2 Exécution de JavaScript 78
5.3.3 Utilisation de WebKit pour interagir avec le site Web 80
5.3.4 Sélénium 85
5.4 Résumé du chapitre 88
Chapitre 6 Interaction avec le formulaire 896.1 Formulaire de connexion 90
6.2 Extension de script de connexion qui prend en charge les mises à jour de contenu 97
6.3 Utilisation du module Mechanize pour implémenter le traitement automatisé des formulaires 100
6.4 Résumé de ce chapitre 102
Chapitre 7 Traitement du code de vérification 1037.1 Création d'un compte 103
7.2 Reconnaissance optique de caractères 106
7.3 Traitement du code de vérification complexe 111
7.3.1 Utiliser le service de traitement du code de vérification 112
7.3.2 9kw Mise en route 112
7.3.3 Intégration avec la fonction d'enregistrement 119
7.4 Résumé de ce chapitre 120
Chapitre 8 Scrapy 121
8.1 Installation 121
8.2 Démarrer le projet 122
8.2.1 Définir le modèle 123
8.2.2 Créer un robot 124
8.2.3 Utiliser les commandes shell pour explorer 128
8.2.4 Vérifier les résultats 129
8.2.5 Interrompre et reprendre les robots 132
8.3 Utiliser Portia pour écrire des robots visuels 133
8.3.1 Installation 133
8.3.2 Annotation 136
8.3.3 Optimisation des robots d'exploration 138
8.3.4 Vérification des résultats 140
8.4 Utiliser Scrapely pour réaliser une exploration automatisée 141
8.5 Résumé de ce chapitre 142
Résumé du chapitre 9 143
9.1 Moteur de recherche Google 143
9.2 Facebook 148
9.2. 1. Site Web 148
9.2.2 API 150
9.3 Gap 151
9.4 BMW 153
9.5 Résumé de ceci chapitre 157
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!