Python

Vous trouverez le script en suivant ce lien ici

Partie 1

#!/usr/bin/python
# -*- coding: utf-8 -*-

# importation de la page web et du programme :
import urllib, re

# adresse de la page à récupérer :
url = urllib.urlopen("http://ilpga.fr")

# décodage du code html :
codehtml=codehtml.decode("iso-8859-1")

# imprime la page web
print codehtml

Partie 2

# on remplace toutes les balises HTML :
texte = re.sub("<.*?>",""codehtml

# on enlève les espaces en trop
texte = re.sub(" +"," ",texte)

# on remplace les """ par des guillemets
texte = re.sub(""","\"",texte)

# mise en place des accents
texte = re.sub("é","e",texte)
texte = re.sub("ê","e",texte)
texte = re.sub("è","e",texte)
texte = re.sub("â","a",texte)
texte = re.sub("î","i",texte)
texte = re.sub("û","u",texte)

Partie 3

# encode le texte en utf :
texte=texte.encode("utf-8")

# ouverture du fichier cible :
fichier = open("pageweb.txt","w")

# ecrit dans "pagreweb.txt" :
fichier.write(texte)

ici est disponible pageweb

# fermeture du fichier cible :
fichier.close()

Partie 4

# ouverture du fichier "infostat.txt" :
infostat = open("infostat.txt","w")

# indique le nombre de caractères dans la page web :
infostat.write("Ce fichier contient "+str(len(texte))+ " caractères.\n")

ici est disponible infostat

# permet le découpage des caractères en mots :
expr = re.compile("\W+"re.U)

# permet de faire une liste des mots
liste = expr.split (texte)

# imprime la liste des mots
print liste

# indique dans le fichier le nombre de mots et le nombre de mots différents :
infostat.write("Ce fichier contient "+str(len(liste)+" mots et "+str(len(set(liste)))+" mots differents.\n")

# classification des mots par ordre alphabétique
infostat.write(" ".join(sorted(set(liste),key=str.lower)))

# création de la liste de mots
infostat.write(" ".join(sorted(set(liste))))

# calcul de fréquence des mots
# création d'un dictionnaire :
dicoFreg = {}

# recherche dans les mots de la liste :
mot = set(liste)

# calcule la fréquence des mots dans la liste :
for mot in liste

# si le mot n'est pas dans le dictionnaire crée on le compte une fois
if mot not in dicoFreg :

# sinon on ajoute 1 à son décompte
else: dicoFreg[mot]=dicoFreg[mot]+1

Partie 5

# fermeture du fichier "infostat"
infostat.close()