Ici on ouvre le fichier et on lit le contenu puis on le divise grâce à l'encodage '###'
``
```
#Parcourt chaque partie du texte
for partie in parties_texte:
lignes = partie.strip().splitlines() # Divise la partie en lignes
...
...
@@ -214,7 +221,7 @@ for partie in parties_texte:
#Pour afficher le nombre d'occurrences du mot dans chaque partie du texte:
#for i, occurrences in enumerate(compteurs_occurrences, start=1):
#print(f"Le mot '{mot_a_chercher}' apparaît {occurrences} fois dans la partie {i} du texte.")
``
```
On subdivise ensuite les parties pour obtenir des lignes distinctes, on initialise le nombre d'occurences à 0.
Une boucle nous permet d'ajouter une unité aux nombre d'occurence si il compte 1 fois le mot que l'on cherche dans la ligne.
On scanne ainsi le texte pour compter le nombres d'occurences, ensuites on ajoutes cela dans le tableau vide que l'on à initier précédement à l'aide de la fonction append.
...
...
@@ -227,7 +234,7 @@ C'est un peu long mais on a pas trouver d'autres moyens (ça peut être optimis
``
```
personnages=["HARPAGON", "VALÈRE", "ÉLISE", "CLÉANTE", "LA FLÈCHE", "MARIANE", "ANSELME", "FROSINE", "MAÎTRE SIMON", "MAÎTRE JACQUES", "BRINDAVOINE", "LA MERLUCHE", "LE COMMISSAIRE"]
@@ -273,17 +280,17 @@ Pour savoir comment marche la fonction qui trace les camenberts aller voir: [fon
``
```
%matplotlib notebook
fig, axs = plt.subplots(2, 4, figsize=(20,8))
plt.gcf().subplots_adjust(left = 0.2, bottom = 0.2, right = 0.9, top = 0.9, wspace = 1.1, hspace = 0)
``
```
Pour tracer les camenberts relatifs à toutes les parties du texte on utilise des boucle pour ce faciliter la tache, et on décide de regrouper ces camenbert par 8 (les 8 lignes en dessous de la boucles) dans une figure et donc d'avoir au total 4 (les 4 boucles) figures (car on a 32 parties), dans la boucle on associe un graphique camenbert à chacune des parties.
Sur ces camenberts j'ai choisit d'afficher le pourcentages de paroles de chaque l'occuteur de la scène, cela ce fait avec les paramètre de la fonction .pie; labels=personnages donne les noms et autopct = lambda x: str(round(x, 2)) + '%' donne le pourcentage de parole.
On affiche sur la console nos figure en utilisant plt.show().
## Cinquième Cellule
...
...
@@ -388,7 +395,7 @@ On veut maintenant afficher les résultat brut du nombre d'ocurrence par personn
La technique suivante n'est pas optimiser mais fonctionne, pour sélectionner le nombre de prise de parole d'un personnage en particulier on décommente (on enlève # devant le nom du perso) la ligne qui lui est associé. Dans l'exemple ci-dessous on va afficher les prises de parole de Valère.
``
```
#mot_a_chercher = "HARPAGON."
mot_a_chercher = "VALÈRE."
#mot_a_chercher = "ÉLISE."
...
...
@@ -403,12 +410,12 @@ mot_a_chercher = "VALÈRE."
#mot_a_chercher = "LA MERLUCHE."
#mot_a_chercher = "LE COMMISSAIRE."
``
```
On définit une fonction qui récupère le texte via l'url définit précédement et qui nous affiche si le texte a bien été récupéré en remplissant une variable 'response.text'.
``
```
#Fonction pour récupérer le contenu du fichier texte à partir d'une URL
def get_text_from_url(url):
response = requests.get(url)
...
...
@@ -417,20 +424,20 @@ def get_text_from_url(url):
else:
return None
``
```
Ensuite on récupere les données du texte par cette ligne.
``
```
#Récupère le contenu du fichier texte à partir de l'URL
text_content = get_text_from_url(url)
``
```
Enfin on defini la fonction qui va nous afficher le nombres de prise de parole, on définit les ligne en utiliasnt .lower().splitlines() qui découpe le texte en ligne, puis on fais la somme de chaque occurences trouvée avec la fonction sum() (qui fait la somme des itérables), puis on affiche enfin le résultat par par la commande print() qui affiche sur la console ce qu'on lui demande. Dans notre cas ce sera "Le nom Valère apparait seul X fois dans l'oeuvre"
``
```
#Vérifie combien de fois le mot apparaît seul sur une ligne dans le texte (en ignorant la casse)
if text_content:
...
...
@@ -440,7 +447,7 @@ if text_content:
else:
print("Impossible de récupérer le contenu du fichier texte depuis l'URL.")
``
```
## Sixiéme cellule
...
...
@@ -456,7 +463,7 @@ Pour afficher cela j'utilise ensuite matplotlib.pyplot: