Première partie : Python

Dans cette partie, nous allons vous présenter le script que nous avons écrit en Python. Nous avons choisi cette page, parce qu'elle contenait beaucoup de texte. La page était encodée en UTF-8, mais nous avons quand même rencontré des difficultés au moment de l'écriture dans le fichier pageweb.txt : certaines entités étaient mal encodées, nous avons donc choisi de contouner le problème en utilisant les expressions régulières. Le problème a d'ailleurs persisté au moment de l'écriture du fichier infostat.txt : même en forçant l'encodage en UTF-8, certaines entités comme les "à" ne sont pas reconnues. Supprimer le texte contenu entre les balises <script> a également été une des difficultés rencontrées, mais nous avons fini par trouver une expression régulière qui permette de les supprimer.

Les 5 grandes étapes de notre script sont les suivantes :

  1. Récupération du code html brut
  2. Nettoyage de toutes les balises, remplacement des entités mal encodées
  3. Création d'un fichier pageweb.txt contenant le texte nettoyé
  4. Opérations de décompte sur le texte
  5. Création d'un fichier infostat.txt contenant les résultats trouvés

1 - Description du code

Récupération du code html brut :

Nettoyage de toutes les balises, remplacement des entités mal encodées :

Création d'un fichier pageweb.txt contenant le texte nettoyé :

Opérations de décompte et création de infostat.txt :

2 - Description des fonctions

Nous allons à présent détailler l'utilisation de quelques unes des fonctions utilisées dans notre script.

La fonction len() :

La fonction len() retourne la longueur (le nombred'items) d'un objet. Cette fonction peut prendre pour argument une séquence (string, tuple ou liste) ou un dictionnaire.

Les statements if...then...else :

Ces statements permettent de créer des boucles de condition : si (if) la première condition est remplie, alors (then) le programme fait ceci, sinon (else) il fait cela.

La fonction split :

La fonction "split" retourne une liste des mots contenus dans le string. On peut choisir le nombre maximal de ségmentations que l'on veut effectuer : ici, nous n'avons spécifié aucune valeur, donc toues les segmentations possibles ont été faites. Si on avait voulu segmenter les lignes en fonction des virgules et non pas en fonction des points, il aurait suffit de saisir la commande suivante :

for line in f.read().split(',')

3 - Ressources

  • Pour télécharger le script, cliquez ici.
  • Pour télécharger le fichier pageweb.txt, cliquez ici.
  • Pour télécharger le fichier infostat.txt, cliquez ici.




  • Et voilà, nous en avons fini avec Python !