Les bots et la recherche de l'information - RERO DOC - S'identifier

Ce travail de diplôme est réalisé dans le cadre de l'examen final de la Haute
école de gestion de ...... Figure 2-4: Donnée de l'exercice sur la web sémantique.

Part of the document

Les bots
et
la recherche de l'information [pic] Travail de diplôme réalisé en vue de l'obtention du diplôme HES par :
Iman HOSSEIN-SOLTANI Conseiller au travail de diplôme :
(Jean-Philippe TRABICHET, professeur HES et responsable de filière)
Genève, 23 octobre 2006
Haute École de Gestion de Genève (HEG-GE)
Informatique de gestion Déclaration
Ce travail de diplôme est réalisé dans le cadre de l'examen final de la
Haute école de gestion de Genève, en vue de l'obtention du titre de
bachelor d'informaticien de gestion HES. L'étudiant accepte, le cas
échéant, la clause de confidentialité. L'utilisation des conclusions et
recommandations formulées dans le travail de diplôme, sans préjuger de leur
valeur, n'engage ni la responsabilité de l'auteur, ni celle du conseiller
au travail de diplôme, du juré et de la HEG. « J'atteste avoir réalisé seul le présent travail, sans avoir utilisé des
sources autres que celles citées dans la bibliographie. »
Fait à Genève, le 23 octobre 2006
Iman Hossein-Soltani Remerciements
Je tiens particulièrement à remercier vivement toutes celles et
ceux qui amicalement, tout au long du chemin, m'ont apporté
encouragements, aide, soutien, et conseils afin de parvenir à la
rédaction de ce mémoire de Diplôme.
Je leur dédie ce travail ainsi que ma reconnaissance et mes
sentiments de gratitude éternels :
Mes chers parents : Mehri et Mohammad,
Ma chère s?ur adorée Parmis et mon adorable frère Payman,
Mes professeurs : M. Trabichet ainsi que tous mes dévoués
professeurs de la Haute Ecole de Gestion de Genève,
Mes ami(e)s : Bozi, Danièle, Fabien, Fabrice, Julia, Homayoon,
Marie-Aude, Matthieu, Mazyar, Nada, Natacha, Payman, Pierre-André,
Sina, Vlad ainsi que Me Elizabeth Ziegler.
A l'Iran et à la Suisse.
Iman Hossein-Soltani Ne t'inquiète pas des vicissitudes de ce monde d'inconstance ;
demande du vin et rapproche-toi de ta caressante maîtresse, car,
vois-tu, celui que sa mère enfante aujourd'hui, demain disparaît de
la terre, demain rentre dans le néant.
Poète perse Omar Khayam (1048 - 1131) Nichapour Table des matières
Déclaration i
Remerciements ii
Table des matières iii
Liste des figures vi
Liste des tableaux vi
Liste des diagrammes vi
Avant propos vii
Partie 1 Les bots et leur environnement 1
1.1 Introduction 1 1.2 Agents 1
1.2.1 Qu'est-ce qu'un agent ? 1
1.2.1.1 Propriétés des agents 1
1.2.1.1.1 Autonomie 1
1.2.1.1.2 Sociabilité 1
1.2.1.1.3 Réactivité 1
1.2.2 Pourquoi les agents ? 2
1.2.2.1 Les facteurs sociaux 2
1.2.2.1.1 Les agents dans un « Framework psychologique » 2
1.2.2.1.2 Les agents dans un « Framework filtrant » 3
1.2.2.2 Histoire des agents 3 1.3 Bots sur Internet 7
1.3.1 Bots de communication 7
1.3.1.1 Chatterbots 7
1.3.1.2 Messagerie Instantanée 8
1.3.1.3 Protocole IRC 11
1.3.1.4 Sockets 12
1.3.1.5 Exemple d'utilisation d'un bot IRC 14
1.3.2 Bots d'information 15
1.3.2.1 Protocole HTTP 15
1.3.2.2 Extraction de données à partir de pages HTML 17
1.3.2.2.1 Balises concernées par les bots 17
1.3.2.3 Spider 18
1.3.2.3.1 Applications du Spider 18
1.3.2.3.2 Structure d'une page web 19
1.3.2.3.3 Structure du Spider 20
1.3.2.3.4 Flow chart de Spider non récursif 22
1.3.2.4 Agrégateur 23
1.3.2.4.1 Agrégation online 23
1.3.2.4.2 Agrégation offline 24
1.3.2.4.3 Weatherbot, un exemple de l'agrégation 24
1.3.2.5 Mesures à prendre en considération 26
1.3.2.5.1 Hummering 26
1.3.2.5.1.1 Comment éviter le Hummering ? 26
1.3.2.5.2 Identification des bots 27
1.3.2.5.2.1 Utilisation des Header HTTP 27
1.3.2.5.3 Actions du webmaster 28
1.3.3 Vers un partage standardisé de l'information 29
1.3.3.1 eXtensible Markup Language (XML) 29
1.3.3.1.1 Qu'est-ce que le XML ? 29
1.3.3.1.2 XML et les bots d'information 30
1.3.3.2 Simple Object Access Protocol (SOAP) 31
1.3.3.2.1 Comment le SOAP transfère les données ? 31
1.3.3.2.2 Exemple du SOAP 32
1.3.3.2.3 SOAP et les bots d'information 33
1.3.4 Bots malveillants 34
1.3.4.1 Mise en réseau de bots dans un but malveillant 34
1.3.4.2 Utilisations des bots malveillants 36
1.3.5 Autres bots 38 Partie 2 Web sémantique au service de Spider 39
2.1 Concept de Spider sémantique 39 2.2 Principales familles d'outils de recherche 39
2.2.1 Annuaires 39
2.2.2 Moteurs de recherches 41
2.2.2.1 Algorithmes de classement 43
2.2.3 Métamoteurs 44 2.3 Web sémantique 45
2.3.1 Processus d'indexation 45
2.3.2 Construction de l'index 46
2.3.3 Processus d'évaluation 50
2.3.4 Exploitation de l'approche pour les requêtes 51 2.4 Intégration de la web sémantique au Spider 52
2.4.1 Démarche d'intégration 52 Partie 3 Prototype Robotina 54
3.1 Introduction à Robotina 54
3.1.1 But de Robotina 54
3.1.2 Comment définissons-nous un site fiable ? 56
3.1.3 Accès à l'information électronique 56
3.1.4 Robotina et les familles de moteurs de recherche 57
3.1.5 Qu'apporterait la web sémantique à Robotina ? 58 3.2 Robotina, un moteur de recherche 58
3.2.1 Comment Robotina alimente-elle sa base de données ? 58
3.2.2 Fonctionnement du bot de Robotina 60
3.2.3 Architecture du système de Robotina 62 Résumé 64
Partie 4 Bibliographie 66
4.1 Livres 66 4.2 Sites Internet 66 Partie 5 Annexes 68
5.1 Manuel de mise en marche de Robotina 68 5.2 Manuel de programmeur du bot de Robotina 68 5.3 Codes PHP du bot Robotina 70 5.4 Codes PHP de l'interface utilisateur de Robotina 75
5.4.1 Fichier : functions.php 75
5.4.2 Fichier : index.php 83
5.4.3 Fichier : creation_compte.php 84
5.4.4 Fichier : compte_utilisateur.php 85
5.4.5 Fichier : affichage_resultats.php 86
5.4.6 Fichier : contact.php 87 5.5 Codes SQL de Robotina pour la base de données 87 5.6 Principes de la protection juridique des ?uvres de l'esprit 88
5.6.1 Conditions de la protection 88
5.6.1.1 Droits d'auteur 89
5.6.1.2 Mise à la disposition d'une ?uvre via Internet 90
5.6.2 Contrats 90 5.7 Typologie des données 91 5.8 Difficulté d'indexation des pages dynamiques 93 5.9 Tendances des moteurs de recherches 94
Liste des figures Figure 1-1: Chatterbot iEinstein 7
Figure 1-2: Yahoo! Messenger, la liste des contacts et des salons 9
Figure 1-3: Yahoo! Messenger, la boîte de dialogue et le salon de chat 10
Figure 1-4: Températures des villes dans le monde 24
Figure 1-5: Code source de la page des températures 25
Figure 1-6: Exemple du code d'un fichier XML 30
Figure 1-7: Exemple d'une requête SOAP 32
Figure 1-8: Exemple d'une réponse du serveur SOAP 32
Figure 2-1: Page d'accueil de culture.fr 40
Figure 2-2: Spider Simulator à la découverte de google.com 42
Figure 2-3: Métamoteur Copernic 44
Figure 2-4: Donnée de l'exercice sur la web sémantique 48
Figure 2-5: Calcul de la similarité pour Doctor et Nurse 49
Figure 3-1: Démarche d'inscription sur le site Robotina 54
Figure 3-2: Utilisation de Robotina pour une recherche d'article 55
Figure 3-3: Résultat de recherche de Robotina 55
Figure 3-4: Comparaison des flux RSS du Temps et du Courrier 59
Figure 3-5: Illustration du fichier log de Robotina 63
Figure 5-1: Page d'accueil de google.ch 94
Figure 5-2: Sommaire proposé par Yahoo! Actualité 95
Figure 5-3: Résultat de recherche du mot clé "heg" sur Vivisimo 96
Figure 5-4: Résultat de recherche du mot clé "heg" sur Kartoo 97
Figure 5-5. Ecran de présentation de "Google AdWords" 98
Figure 5-6: "Mirago France" propose des recherches par région géographique
99 Liste des tableaux Tableau 1-1: Les sockets et le modèle OSI 13
Tableau 2-1: Résultat de l'exercice sur la web sémantique 48
Tableau 5-1: Typologie de données sur l'Internet 92 Liste des diagrammes Diag. 1-1: Diagramme d'activité d'un bot IRC 14
Diag. 1-2: Diagramme d'activité de l'agrégateur 25
Diag. 2-1: Diagramme d'activité de Spider Sémantique 53
Diag. 3-1: Diagramme d'activité du fonctionnement de Robotina 61
Diag. 3-2: Schéma de la base de données de Robotina 62
Diag. 3-3: Hiérarchie des bots 65 Avant propos Ce travail est composé de cinq parties. Dans la première partie, nous
définirons la notion de bot et nous répondrons à la question : « Qu'est ce
qu'un bot ? » Etant donnée l'application de cet outil informatique dans des domaines très
divers, nous avons décidé d'aborder le sujet en expliquant un