recherche
Maisondéveloppement back-endTutoriel PythonComment faire un bon robot d'exploration Web ?

Comment faire un bon robot d'exploration Web ?

Jun 20, 2017 pm 04:23 PM
如何爬虫网络

L'essence des robots d'exploration Web est en fait de « voler » des données sur Internet. Grâce aux robots d'exploration Web, nous pouvons collecter les ressources dont nous avons besoin, mais de la même manière, une utilisation inappropriée peut également causer de graves problèmes.

Par conséquent, lorsque nous utilisons des robots d'exploration Web, nous devons être capables de "voler de la bonne manière".

Les robots d'exploration Web sont principalement divisés dans les trois catégories suivantes :

1. Petite échelle, petite quantité de données et vitesse d'exploration insensible ; pour cela, nous pouvons utiliser la bibliothèque Requests pour implémenter des robots d'exploration Web, qui sont principalement utilisés pour explorer des pages Web

2. À échelle moyenne, avec une grande échelle de données et une vitesse d'exploration sensible pour ce type de robot d'exploration Web ; peut utiliser la bibliothèque Scrapy. Implémentation, principalement utilisée pour explorer des sites Web ou des séries de sites Web ;

3. Moteur de recherche à grande échelle, la vitesse d'exploration est essentielle à l'heure actuelle, un développement personnalisé est requis, principalement utilisé pour explorer ; l'ensemble du réseau, généralement pour construire l'ensemble du réseau Moteurs de recherche, tels que Baidu, recherche Google, etc.

Parmi ces trois types, le premier est le plus courant, et la plupart d'entre eux sont des robots d'exploration à petite échelle qui explorent les pages Web.

Il existe également de nombreuses objections aux robots d'exploration Web. Parce que les robots d'exploration enverront constamment des requêtes au serveur, ce qui affectera les performances du serveur, provoquera du harcèlement sur le serveur et augmentera la charge de travail des responsables de la maintenance du site Web.

En plus du harcèlement des serveurs, les robots d'exploration du Web peuvent également entraîner des risques juridiques. Étant donné que les données sur le serveur ont des droits de propriété, si les données sont utilisées à des fins lucratives, cela entraînera des risques juridiques.

En outre, les robots d'exploration Web peuvent également provoquer des fuites de confidentialité des utilisateurs.

En bref, le risque des robots d'exploration du web vient principalement des trois points suivants :

  • Performance du serveur Harcèlement

  • Risques juridiques au niveau du contenu

  • Fuite de la vie privée

Par conséquent, le Web crawlers L'utilisation nécessite certaines règles.

Dans des situations réelles, certains sites Web plus importants ont imposé des restrictions pertinentes aux robots d'exploration Web, et les robots d'exploration Web sont également considérés comme une fonction standardisable sur l'ensemble d'Internet.

Pour les serveurs généraux, nous pouvons limiter les robots d'exploration de 2 manières :

1 Si le propriétaire du site Web dispose de certaines capacités techniques pour le faire. limiter les robots d'exploration Web grâce à l'examen des sources.

L'examen des sources est généralement limité en jugeant l'agent utilisateur. Cet article se concentre sur le deuxième type.

2. Utilisez le protocole Robots pour indiquer aux robots d'exploration les règles qu'ils doivent respecter, celles qui peuvent être explorées et celles qui ne sont pas autorisées, et exigez que tous les robots d'exploration se conforment à ce protocole.

La deuxième méthode consiste à informer sous la forme d'une annonce que l'accord sur les robots est recommandé mais que les robots d'exploration Web peuvent ne pas s'y conformer, mais qu'il peut y avoir des risques juridiques. Grâce à ces deux méthodes, des restrictions morales et techniques efficaces sont créées sur les robots d'exploration Web sur Internet.

Ensuite, lorsque nous écrivons un robot d'exploration Web, nous devons respecter la gestion des ressources du site Web par les responsables du site Web.

Sur Internet, certains sites Web n'ont pas le protocole Robots et toutes les données peuvent être explorées ; cependant, la grande majorité des sites Web grand public prennent en charge le protocole Robots et ont des restrictions pertinentes. introduction à la syntaxe de base du protocole Robots.

Protocole Robots (Robots Exclusion Standard, norme d'exclusion des robots d'exploration Web) :

Fonction : Le site Web indique aux robots d'exploration Web quelles pages peuvent être explorées et lequel non.

Formulaire : fichier robots.txt dans le répertoire racine du site.

Syntaxe de base du protocole Robots : * représente tout, / représente le répertoire racine.

Par exemple, le protocole Robots de PMCAFF :

User-agent : *

Interdire : /article/edit

Interdire : /discuss/write

Interdire : /discuss/edit

à la ligne 1 Utilisateur -agent :* signifie que tous les robots d'exploration Web doivent respecter les protocoles suivants :

Interdire : /article/edit à la ligne 2 signifie que tous les robots d'exploration Web ne sont pas autorisés à accéder aux articles sous article/modifier le contenu, le il en va de même pour les autres.

Si vous observez le protocole Robots de JD.com, vous pouvez voir qu'il existe un agent utilisateur : EtaoSpider, Disallow : /, où EtaoSpider est un robot malveillant et n'est autorisé à explorer aucune ressource de JD.com.

User-agent : *

Interdire : /?*

Interdire : /pop /*.html

Interdire : /pinpai/*.html?*

Agent utilisateur : EtaoSpider

Interdire : /

Agent utilisateur : HuihuiSpider

Interdire : /

Agent utilisateur : GwdangSpider

Interdire : /

Agent utilisateur : WochachaSpider

Interdire : /

Avec le protocole Robots, vous pouvez réguler le contenu du site Web et indiquer à tous les robots d'exploration Web lesquels peuvent être explorés et lesquels ne sont pas autorisés.

Il est important de noter que le protocole Robots existe dans le répertoire racine. Différents répertoires racine peuvent avoir des protocoles Robots différents , vous devez donc faire plus attention lors de l'exploration.

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
Le but principal de Python: flexibilité et facilité d'utilisationLe but principal de Python: flexibilité et facilité d'utilisationApr 17, 2025 am 12:14 AM

La flexibilité de Python se reflète dans les systèmes de prise en charge et de type dynamique multi-paradigmes, tandis que la facilité d'utilisation provient d'une syntaxe simple et d'une bibliothèque standard riche. 1. Flexibilité: prend en charge la programmation orientée objet, fonctionnelle et procédurale, et les systèmes de type dynamique améliorent l'efficacité de développement. 2. Facilité d'utilisation: La grammaire est proche du langage naturel, la bibliothèque standard couvre un large éventail de fonctions et simplifie le processus de développement.

Python: la puissance de la programmation polyvalentePython: la puissance de la programmation polyvalenteApr 17, 2025 am 12:09 AM

Python est très favorisé pour sa simplicité et son pouvoir, adaptés à tous les besoins des débutants aux développeurs avancés. Sa polyvalence se reflète dans: 1) Facile à apprendre et à utiliser, syntaxe simple; 2) Bibliothèques et cadres riches, tels que Numpy, Pandas, etc.; 3) Support multiplateforme, qui peut être exécuté sur une variété de systèmes d'exploitation; 4) Convient aux tâches de script et d'automatisation pour améliorer l'efficacité du travail.

Apprendre le python en 2 heures par jour: un guide pratiqueApprendre le python en 2 heures par jour: un guide pratiqueApr 17, 2025 am 12:05 AM

Oui, apprenez Python en deux heures par jour. 1. Élaborer un plan d'étude raisonnable, 2. Sélectionnez les bonnes ressources d'apprentissage, 3. Consolider les connaissances apprises par la pratique. Ces étapes peuvent vous aider à maîtriser Python en peu de temps.

Python vs C: avant et inconvénients pour les développeursPython vs C: avant et inconvénients pour les développeursApr 17, 2025 am 12:04 AM

Python convient au développement rapide et au traitement des données, tandis que C convient à des performances élevées et à un contrôle sous-jacent. 1) Python est facile à utiliser, avec syntaxe concise, et convient à la science des données et au développement Web. 2) C a des performances élevées et un contrôle précis, et est souvent utilisé dans les jeux et la programmation système.

Python: engagement du temps et rythme d'apprentissagePython: engagement du temps et rythme d'apprentissageApr 17, 2025 am 12:03 AM

Le temps nécessaire pour apprendre le python varie d'une personne à l'autre, principalement influencé par l'expérience de programmation précédente, la motivation d'apprentissage, les ressources et les méthodes d'apprentissage et le rythme d'apprentissage. Fixez des objectifs d'apprentissage réalistes et apprenez mieux à travers des projets pratiques.

Python: automatisation, script et gestion des tâchesPython: automatisation, script et gestion des tâchesApr 16, 2025 am 12:14 AM

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Python et temps: tirer le meilleur parti de votre temps d'étudePython et temps: tirer le meilleur parti de votre temps d'étudeApr 14, 2025 am 12:02 AM

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python: jeux, GUIS, et plusPython: jeux, GUIS, et plusApr 13, 2025 am 12:14 AM

Python excelle dans les jeux et le développement de l'interface graphique. 1) Le développement de jeux utilise Pygame, fournissant des fonctions de dessin, audio et d'autres fonctions, qui conviennent à la création de jeux 2D. 2) Le développement de l'interface graphique peut choisir Tkinter ou Pyqt. Tkinter est simple et facile à utiliser, PYQT a des fonctions riches et convient au développement professionnel.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

MinGW - GNU minimaliste pour Windows

MinGW - GNU minimaliste pour Windows

Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP