Devoir final sur la programmation avec Python

Mon programme Python est téléchargeable ici

La page web utilisée est téléchargeable ici


    #!/usr/bin/python

    # -*- coding: utf-8 -*-



    #appel des modules python

    import urllib, re



    #établit et stocke la connexion avec le site

    url = urllib.urlopen("http://www.lemonde.fr/sport/article/2011/11/17/joakim-noah-envisage-un-retour-aux-sources-a-paris_1604857_3242.html ")

    #lit la page et stocke le code source

    codehtml = url.read()

    #affiche dans le shell le code source

    codehtml=codehtml.decode("Windows-1252")

    #print codehtml



    fichier = open("pageweb.txt","w")

    fichier2 = open("infostat.txt","w")



    #texte nettoyé dans lequel on stock: ce qui est substitué,par quoi on le substitue

    #néttoie la page web de toutes entités html

    codehtml = re.sub("<.*?>","",codehtml)

    #encode en utf-8

    texte=texte.encode("utf-8)



    expr = re.compile("\W+",re.U)

    listedemots= expr.split(codehtml)

    FONT COLOR="BLACK">listedemots.sort()

    print listedemots

    dicoFreq = {}

    for mot in listedemots:

    if mot not in dicoFreq:

    dicoFreq[mot]=1

    else: dicoFreq[mot] = dicoFreq[mot]+1



    fichier2.write("Ce fichier contient"+str(len(codehtml))+"carctères.\n")

    fichier2.write("Ce fichier contient"+str(len(listedemots))+"mots.\n")

    fichier2.write("La fréquence la plus élevée est :"+str(max(dicoFreq.values()))+"\n")



    #pour chaque mot du dictionnaire par ordre alphabétique

    for clef in sorted(dict.iterkeys(dicoFreq)):

    #il les écrit dans un fichier

    fichier2.write(clef + "\t" + str(dicoFreq[clef])+"\n")



    fichier.close()

    fichier2.close()


Il y a 5 grandes étapes dans mon programme:

  • L'importation des modules de Python.
  • Le nettoyage de la page web.
  • L'ouverture d'un fichier,le découpage des mots et leur décompte.
  • L'initialisation d'un dictionnaire et la création de nouvelles entrées.
  • L'écriture du dictionnaire dans un fichier.
  •                                                                                                                               
    Retour haut de page