Maison  >  Article  >  développement back-end  >  Qu'est-ce qu'un robot ? Explication détaillée des robots d'exploration

Qu'est-ce qu'un robot ? Explication détaillée des robots d'exploration

零下一度
零下一度original
2017-07-03 09:46:531951parcourir

Bonjour à tous, j'ai récemment appris Python. J'ai également rencontré quelques problèmes au cours de l'étude et acquis une certaine expérience. J'organiserai systématiquement mon apprentissage ici. Si vous êtes intéressé par l'apprentissage des robots, vous pouvez lire ces articles pour référence. , chacun est invité à partager ses expériences d’apprentissage.

Version Python : 2.7, veuillez trouver d'autres articles de blog pour Python 3.

Tout d’abord, qu’est-ce qu’un robot ?

Un robot d'exploration Web (également connu sous le nom d'araignée Web, de robot Web et plus communément appelé Web Chaser dans la communauté FOAF) est un programme qui capture automatiquement les informations du World Wide Web selon certaines règles ou scripts.

D'après mon expérience, pour apprendre le robot d'exploration Python, nous devons apprendre les points suivants :

Connaissance de base de Python

Utilisation des bibliothèques urllib et urllib2 en Python

Expression régulière Python

Cadre de robot d'exploration Python Scrapy

Fonctions plus avancées du robot d'exploration Python

1 Apprentissage de base de Python

Tout d'abord, nous. Pour écrire un robot en Python, vous devez comprendre les bases de Python. Lorsqu'un grand bâtiment sort du sol, vous ne devez pas oublier les fondations, haha. Ensuite, je partagerai quelques tutoriels Python que j'ai regardés, et mes amis pourront les utiliser. comme référence.

1) Tutoriel MOOC Python

J'avais l'habitude de lire un peu de grammaire de base sur le MOOC. Il y a quelques exercices qui y sont attachés. Après avoir appris, je pense que le. l'effet est plutôt bon. C'est bien, mais c'est dommage que le contenu soit fondamentalement le plus basique. Si vous voulez commencer, c'est par ici

URL d'apprentissage : MOOC.com Tutoriel Python

2) Tutoriel Python de Liao Xuefeng

Plus tard, j'ai découvert le tutoriel Python du professeur Liao. Il était très facile à comprendre et très bien. Si vous voulez en savoir plus sur Python, jetez un œil à ceci.

URL d'apprentissage : Tutoriel Python de Liao Xuefeng

3) Tutoriel Python concis

Il existe également un didacticiel Python concis que j'ai lu, et je pense qu'il est plutôt bon

🎜>

URL d'apprentissage : tutoriel Python concis

4) Le laboratoire de Wang Hai

C'est mon laboratoire de premier cycle. J'ai fait référence à son article quand j'ai commencé, et je l'ai résumé à nouveau. moi-même, et plus tard, cette série d'articles a ajouté du contenu basé sur son travail.

URL d'apprentissage : le laboratoire de Wang Hai

2. Utilisation des bibliothèques Python urllib et urllib2

Les bibliothèques urllib et urllib2 sont les bibliothèques les plus basiques pour apprendre les robots d'exploration Python, utilisez-la avec la bibliothèque, nous pouvons obtenir le contenu de la page Web et utiliser des expressions régulières pour extraire et analyser le contenu afin d'obtenir les résultats souhaités. Je partagerai cela avec vous pendant le processus d'apprentissage.

3. Expressions régulières Python

Les expressions régulières Python sont une arme puissante utilisée pour faire correspondre les chaînes. Son idée de conception est d'utiliser un langage descriptif pour définir une règle pour une chaîne. Toute chaîne conforme à la règle est considérée comme « correspondante ». Cela sera partagé dans un prochain article de blog.

4. Framework Crawler Scrapy

Si vous êtes un maître Python et maîtrisez les connaissances de base du crawler, alors recherchez un framework Python. Le framework que j'ai choisi est le framework Scrapy. Quelles fonctions puissantes ce framework possède-t-il ? Ce qui suit est son introduction officielle :

Prise en charge intégrée du HTML, de la sélection et de l'extraction des données sources XML
Fournit une série de filtres réutilisables (c'est-à-dire des chargeurs d'éléments) partagés entre les araignées, car il est intégré prise en charge du traitement intelligent des données analysées.
Fournit une prise en charge intégrée de plusieurs formats (JSON, CSV, XML) et de plusieurs backends de stockage (FTP, S3, système de fichiers local) via l'exportation de flux
Fournit un pipeline multimédia pour télécharger automatiquement les données analysées, les images (ou autres ressources) dans .
Haute évolutivité. Vous pouvez personnaliser et implémenter vos fonctions en utilisant des signaux et des API conçues (middleware, extensions, pipelines).
Le middleware et les extensions intégrés prennent en charge les fonctions suivantes :
cookies et traitement de session
compression HTTP
authentification HTTP
mise en cache HTTP
simulation d'agent utilisateur
robots. txt
Limite de profondeur d'exploration
Fournit une détection automatique et une prise en charge robuste du codage pour les déclarations de codage non standard ou erronées dans des langues autres que l'anglais.
Prend en charge la génération de robots basés sur des modèles. Gardez le code plus cohérent dans les grands projets tout en accélérant la création de robots d'exploration. Voir la commande genspider pour plus de détails.
Fournit des outils de collecte d'état évolutifs pour l'évaluation des performances et la détection des échecs sous plusieurs robots d'exploration.
Fournit un terminal shell interactif, qui vous offre une grande commodité pour tester les expressions XPath, écrire et déboguer les robots d'exploration
Fournit un service système, simplifiant le déploiement et le fonctionnement dans l'environnement de production
Service Web intégré, vous permettant pour Peut surveiller et contrôler votre machine
Terminal Telnet intégré, en vous connectant au terminal Python dans le processus Scrapy, vous pouvez afficher et déboguer le robot d'exploration
La journalisation vous permet de capturer facilement les erreurs pendant le processus d'exploration
🎜> Prend en charge l'exploration des plans de site
Avec le résolveur DNS mis en cache


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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn