Le Web

Les moteurs de recherche

Une recherche sur le web se fait à l'aide d'un moteur de recherche.

Il ne faut pas confondre le navigateur et le moteur de recherche.

Un navigateur permet d'afficher du contenu web après avoir effectué une requête auprès d'un serveur, le moteur de recherche utilise le navigateur pour effectuer des recherches.

Une vidéo qui explique le principe de fonctionnement d'un moteur de recherche

Complément

Faites des recherches en utilisant des moteurs de recherche tel que :

  • Et bien d'autres....

Établir si possible les différences observées...

Les cookies

Visionnez ces deux vidéos.

Rédigez un texte qui résumera les thèmes abordés dans ces vidéos.

Paramétrer son navigateur

En vous aidant de cette vidéo et des informations du site de la CNIL paramétrez votre navigateur pour limiter vos traces sur le web.

Le Rang d'une page web

Google...

En 1998, deux jeunes doctorants de l'université de Stanford, Larry Page et Sergey Brin (en collaboration avec Motwani et Wynograd) publiaient un article intitulé "The PageRank Citation Ranking: Bringing Order to the Web" présentant les résultats d'un nouvel algorithme permettant de classer les pages web selon leur popularité et montrant la précision de cet algorithme sur un nouveau moteur de recherche appelé ... Google !

  • On simule le comportement d'un internaute.

  • On démarre au hasard sur une page

  • On suit de façon aléatoire un lien se trouvant sur cette page

  • Et ainsi de suite

On impose le fait que dans 15% des cas , l'utilisateur abandonne sa navigation pour repartir d'une page au hasard.

Notre utilisateur va se balader de pages en pages, en faisant son petit tour du net. A chaque fois que l'utilisateur tombe sur une page donnée, cette page gagne un point. Et à la fin, la page ayant le plus de point est alors la page la plus populaire du réseau !

SimulationEt si on faisait un programme

Considérons 6 sites web : A, B, C, D, E, F ayant des liens hypertexte entre eux.

  • Le site A contient un lien vers les sites "B", "C" et "E" (3 liens sortants)

  • Le site B contient un lien vers le site "F" (1 lien sortant)

  • Le site C contient un lien vers les sites "A" et "E" (2 liens sortants)

  • Le site D contient un lien vers les sites "B" et "C" (2 liens sortants)

  • Le site E contient un lien vers les sites "A", "B", "C", "D" et "F" (5 liens sortants)

  • Le site F contient un lien vers le site "E" (1 lien sortant)

Avec Processing

Commençons par mettre ces informations dans des variables

1
# import de la bibliothèque random
2
import random
3
# programme principal
4
def setup():
5
    # création d'un dictionnaire Hypertexte
6
    Hypertext = {}
7
    # création d'un dictionnaire pour le nombre de visite
8
    Walk_Number = {}
9
    # une variable pour le nombre total de visite
10
    Total_Walk = 0
11
    #liste des sites web
12
    Websites = ["A","B","C","D","E","F"]
13
    # les liens hypertextes
14
    #  le dictionnaire possède des clés ( nom des sites)
15
    # Qui contiennent des listes (liens hypertextes)
16
    Hypertext["A"] = ["B","C","E"]
17
    Hypertext["B"] = ["F"]
18
    Hypertext["C"] = ["A","E"]
19
    Hypertext["D"] = ["B","C"]
20
    Hypertext["E"] = ["A","B","C","D","F"]
21
    Hypertext["F"] = ["E"]
22
    print(Hypertext)
23
    # On initialise à 0.0 les visites des sites 
24
    Walk_Number["A"] = 0.0
25
    Walk_Number["B"] = 0.0
26
    Walk_Number["C"] = 0.0
27
    Walk_Number["D"] = 0.0
28
    Walk_Number["E"] = 0.0
29
    Walk_Number["F"] = 0.0

Avec Un IDE Python ( EduPython - Spyder...)

1
import random
2
# création d'un dictionnaire Hypertexte
3
Hypertext = {}
4
# création d'un dictionnaire pour le nombre de visite
5
Walk_Number = {}
6
# une variable pour le nombre total de visite
7
Total_Walk = 0
8
#liste des sites web
9
Websites = ["A","B","C","D","E","F"]
10
# les liens hypertextes
11
#  le dictionnaire possède des clés ( nom des sites)
12
# Qui contiennent des listes (liens hypertextes)
13
Hypertext["A"] = ["B","C","E"]
14
Hypertext["B"] = ["F"]
15
Hypertext["C"] = ["A","E"]
16
Hypertext["D"] = ["B","C"]
17
Hypertext["E"] = ["A","B","C","D","F"]
18
Hypertext["F"] = ["E"]
19
print(Hypertext)
20
# On initialise à 0.0 les visites des sites 
21
Walk_Number["A"] = 0.0
22
Walk_Number["B"] = 0.0
23
Walk_Number["C"] = 0.0
24
Walk_Number["D"] = 0.0
25
Walk_Number["E"] = 0.0
26
Walk_Number["F"] = 0.0

La partie calcul...

L'algorithme :

1
i=0
2
tant que i<1000
3
   On choisit au hasard un site --> x
4
   tant qu'un nombre aléatoire est inférieur à 0.85
5
      le nombre de visite de x est incrémenté de 1
6
      le nombre total de visite est incrémenté de 1
7
      x <-- un lien hypertexte visitable
8
   i=i+1
9
on fait afficher les résultats

Il faut donc rajouter à notre programme les lignes suivantes :

Avec Processing

1
i = 0
2
    while i < 1000:
3
        x = random.choice(Websites)
4
        while random.random() < 0.85:
5
            Walk_Number[x] = Walk_Number[x] + 1
6
            Total_Walk = Total_Walk + 1
7
            x = random.choice(Hypertext[x])
8
        i = i + 1
9
    print (Walk_Number)
10
    print(Total_Walk)

Avec Un IDE Python ( EduPython - Spyder...)

1
i = 0
2
while i < 1000:
3
    x = random.choice(Websites)
4
    while random.random() < 0.85:
5
        Walk_Number[x] = Walk_Number[x] + 1
6
        Total_Walk = Total_Walk + 1
7
        x = random.choice(Hypertext[x])
8
    i = i + 1
9
print (Walk_Number)
10
print(Total_Walk)

Finalement quel est le classement obtenu ?

Était-ce prévisible ?

Travail à réaliser :

En utilisant le programme :

  • Faire afficher dans la fenêtre les sites classés par ordre de popularité

  • Pour les plus courageux : Augmentez le nombre de site et d'hypertexte...

PrécédentPrécédentFin
AccueilAccueilImprimerImprimer Stéphan Van Zuijlen Licence de documentation libre GNURéalisé avec Scenari (nouvelle fenêtre)