Le Web
Partie 1 : Petite introduction
Le web est une utilisation particulière d’internet qui est, au même titre que le mail, le transfert de fichier, a
conversation, un moyen utilisé par les personnes pour échanger des informations.
Commençons par une rapide présentation des communications sur internet
Imaginons l’envoi d’un message. Si ce message est une lettre vous avez besoin d’un émetteur, d’un récepteur, d’un
support de transmission (la lettre), d’un support d’envoi (l’enveloppe) et d’un intermédiaire (la poste)
Pour un document électronique c’est pareil, on suit un modèle en couche comportant des protocoles (moyens de
transmission de l’information) spécifiques à chaque couche.
Quand un hôte A envoie un document à un hôte B, le processus d'envoi va de la couche application (protocole
HTTP ou FTP) passe par la couche transport (protocole TCP) qui prépare les fichier pour envoi à la couche réseau
(protocole IP) pour la livraison sur la couche liaison et physique (protocole éthernet puis switch – hub). En
revanche, quand il s'agit de recevoir, le message emprunte le chemin inverse : il part de la couche physique pour
arriver à la couche application.
Partie 2 : Fonctionnement du Web : URL – HTTP - Requêtes
Activité 1 : Faire l’activité 2 p 60
Activité 2 : Observer les images ci dessous et répondre aux questions
1.
Observer la différence entre les deux adresses fournies ci dessus et conclure sur l’origine de la page.
Visualisons des requêtes sur une page (Sous firefox : Menu – developpement web – console web)
2. Quelle est la requête HTTP employée par ce site pour fournir les informations ?
3. Que signifie, à votre avis le 200 encadré de vert ?
4. a) Que représente le bandeau gris se trouvant au dessus de la console web ?
b) Apparaît-il systématiquement ?
c) Pourquoi, à votre avis, est-il apparu ici ?
Un petit peu plus de détail
Une
autre requête sur une page yahoo
5. Quel est le type de fichier demandé par les deux requêtes GET et POST ci dessus ?
Pour se faire une idée rapide de la différence entre les requêtes GET et POST (pas à connaître en détail
évidemment)
https://www.ionos.fr/digitalguide/sites-internet/developpement-web/get-vs-post/
Partie 3 : Les moteurs de recherche ou moteur de réponse
Document 1 : Mode de fonctionnement des moteurs de recherche
Une requête est envoyée : des logiciels robots (spider ou crawler) parcourent, non pas le web, mais l’index du web
préalablement crée par le moteur (40 à 50 milliard de pages pour google, 20 milliards pour bing), pour chercher les
termes de la requête puis se pose une série de questions : combien de fois la page contient les mots, sont-ils dans le
titre ou le texte, la page contient-elle des termes synonyme, la page fait-elle partie d’un site de bonne qualité, est-ce
de la tricherie ? Est-ce que le pageRank est bon ?
Le résultat de la requête est une liste de sites qu’il nous faut consulter pour affiner notre recherche
Mais de plus en plus, les moteurs envoient des contenus comme des billets d’avion , la météo, des définitions,…
Activité 1 : Montrer que google se positionne de plus en plus comme moteur de réponse et non de
recherche et en déduire les conséquences pour l’utilisateur ainsi que pour l’éditeur de site web.
Document 2 : La source de l’information : l’index.
Lors de l’indexation, le spider vient sur un site envoie le code HTML à google pour indexation, puis clique sur tous
les liens de la page et recommence l’envoi (c’est comme un internaute qui clique sur tout les liens). Une mise à jour
de l’index est faite en fonction de la mise à jour de la page
Chaque robot fonctionne à sa manière. Voilà pourquoi les résultats peuvent être différents pour une même requête
selon que l'on utilise tel ou tel moteur. Les 3 principaux systèmes d'indexation utilisés par les robots sont les suivants
(certains en utilisent plusieurs):
par mots clés. Lors de la conception d'une page Web, l'auteur peut indiquer une liste de mots clés (non affichée à
l'écran : balise META keywords) qui sera recherchée par le moteur.
par titre. De même, la balise TITLE indique aux moteurs de recherche le titre du document.
dans le texte. Le robot indexe tous les mots (ou les mots des premières lignes) des pages Web.
Activité 2 : Exemple d’indexation et de requête
Soient les textes suivant (en gras le titre de la page) L’indexation de ces textes donne
1) page justice.html Avocat
En droit, l’avocat est un juriste dont les fonctions traditionnelles
sont de conseiller, représenter, assister et défendre ses clients en avocat (justice,6)(avocat,7)
justice en plaidant pour faire valoir leur droits. droit (justice,2)
2) page avocat.html Avocat
fruit (avocat,1)(fruit, )
L’avocat est le fruit de l’avocatier un arbre originaire du Mexique.
Pour murir l’avocat a besoin de beaucoup d’eau et de Soleil juriste (justice, )
3) page fruit.html Fruit
Un fruit est un aliment végétal, la saveur sucrée généralement
consommé cru
Questions
1. Que représentent les valeurs numérique entre parenthèse dans
l’index ?
2. Compléter le tableau avec les valeurs numériques manquantes.
3. On envoie une requête dans un moteur de recherche avec les mots avocat (page1,20)(page 2, 5) (page 3, 15)
«avocat » « droit ». L’index est fourni ci contre. droit (page2,25)(page 3, 10) (page 4, 5)
a) Dans quel ordre les pages seront données ?
b) Même question si le premier mot clé compte double fruit (Page1,10) (page5,20)
4. A partir de cet index, montrer en quoi une recherche à deux mots
clés (avocat + droit) est plus pertinente qu’une recherche à 1 seul
mot clé (avocat)?
Activité 3 : Parcours du Web
Le principe de parcours du web :
On utilise deux listes
- Les pages déjà visitées (aucune au départ)
- Les pages à visiter à partir du point de départ
1. On prend une page parmi les pages à visiter
2. On la transfère dans la liste des pages visitées, on ajoute à la liste des pages à
visiter les pages accessibles depuis la page atteinte
3. On continue dans l’ordre des pages à visiter jusqu’à ce qu’il n’y ait plus de
pages à visiter.
Questions
1. Donner le parcours du graphe en listant les pages visitées et à N° étape Pages visitées Pages à visiter
visiter à chaque étape en partant du point E (compléter un tableau
comme ci contre) 1 E
2. Même question pour un départ du point A, tirer une conclusion 2 E A,H
sur le référencement (présence dans l’index) de certaines pages.
3. Pourquoi est-il préférable de parcourir le graphe par plusieurs points d’entrée
Activité 4 : Un peu de python
Une fonction faisant partie du programme python du moteur de recherche est présentée ci dessous
visitees et aVisiter sont des listes L = [1,2,3,4] L[0]
def visiterPage(page, listeLiens):
#définition de la fonction avec en entrée une page et la liste des liens associés
visitees.append(page) # On ajoute la page « page » à la liste visitees
aVisiter.remove(page) # On enlève la page « page » de la liste a visiter
for page2 in listeLiens: # On parcours les élements de la liste liste des liens
if (not page2) in visitees and (not page2) in aVisiter: #
aVisiter.append(page2) #
« page » est une page html du graphe et « liste lien » est la liste des liens sortant de cette page.
Questions
1. Quel est le rôle d’une fonction en python ?
2. Quel est le rôle de la fonction présentée ci dessus ?
3. Compléter les commentaires avec ce que vous comprenez du programme.
4. Tester le code sur colaboratory en créant des listes nécessaires constituées de nombres.
Document 3 : Mesure de la notoriété d’une page : L’algorithme PageRank google
Le PageRank est une méthode utilisée par Google pour déterminer l’importance d’une page Web.
Il s’agit de l’un des critères qui permettent la réponse du moteur de recherche à une requête
Elle se base sur un concept très simple : un lien émis par une page A vers une page B est assimilé à un « vote » de A
pour B. Au plus une page reçoit de « votes », au plus cette page est considérée comme importante par Google
L’importance d’une page est sans rapport aucun avec l’intérêt ou la pertinence de celle-ci, ces deux dernières notions
étant totalement absentes de l’algorithme du PageRank. Elles interviennent néanmoins dans les pages de résultat de
recherche.
Supposons qu’une page A reçoit des liens émis par les pages T1…Tn.
Le paramètre d est un facteur d’amortissement pouvant être ajusté entre 0 et 1.
Nous donnons généralement à d la valeur 0,85.
De même, C(A) est défini comme le nombre de liens émis par la page A (liens sortants).
Le PageRank de la page A est défini comme suit : PR(A) = (1-d) + d(PR(T1)/C(T1) + … + PR(Tn)/C(Tn))
L’algorithme donne une valeur initiale à toutes les pages puis calcule une nouvelle valeur pour chaque page à l’aide
de la relation jusqu’à ce que les valeurs soient stabilisées.
Dans notre exercice, nous considérerons que la popularité de la page A (P(A)) se mesure avec la relation
P(A) = P(T1)/C(T1) + … + P(Tn)/C(Tn)
Activité 5 : Evaluons la popularité d’une page
Afin de quantifier la popularité d’une page, l’algorithme calcule
un score qui est proportionnel au nombre de fois qu’un
internaute visite la page quand il clique de manière aléatoire
sur les hyperliens.
On utilisera la calculatrice pour générer un nombre aléatoire
(parmi 2 ou 4 suivant la page) qui permet d’avancer.
1. Partir de la page A et choisir 50 fois votre destination de
manière aléatoire. Vous compterez le nombre de passage par
chaque page
2. Mise en commun des résultats de la classe
Nous trouvons par exemple : A : 15 %, B : 10 % ; C : 10 % ; D : 10 % E : 40 % ; F :15 %
Questions
1. Quelle est la signification des pourcentages calculés ?
2. Les valeurs obtenues vous semblent-elles cohérentes ?
3. Retrouver par la relation, la popularité de E
Partie 4 : Securité et vie privée sur le Web
Activité 5 page 66
https://www.youtube.com/watch?v=HfiJ3ME8Tvs