Expression Régulière, sub() = Je m'y casse les dents
Bonjour à tous,
J'aurais besoin de votre aide, je bosse sur un programme dont le but (pour simplifier) et de récupérer le texte d'une page Web et de récupérer la liste des mots existants dans le dictionnaire.
Je suis parvenu à récupérer ma liste de mots (avec BeautifulSoup) ( Ex: 'Lille', 'ville', 'du', 'Nord'). Ensuite pour vérifier l'existence dans le dictionnaire, je passe chaque mot en paramètre de l' url https://dictionnaire.lerobert.com/definition/.
En fonction du code HTTP 404 ou 200, j'en déduis l'existence ou non...
Et c'est là que les problème commence, ville est dans le dictionnaire, mais pas 'ville', du coup j'ai me suis penché sur les expressions régulières car c'est à mon avis la bonne piste,
Code:
1 2 3 4 5 6 7 8 9
|
i = 0
while i < len(liste_mots_potentiels) :
transformation = re.sub(r"'.'",r".")
liste_mots_potentiels[i] = str(re.sub(r"'.'",r"."))
print("\n La liste de mots clés est : ",liste_mots_potentiels) |
Etant débutant Python, je ne m'en sort pas seul. Merci d'avance pour votre aide.
Merci pour vos réponses j'avance
Merci je comprends mieux la façon d'utiliser les regex, mais ça ne corrige pas mon problème si je passe la variable résultat à la fin de mon lien j'obtiens ça : https://dictionnaire.lerobert.com/definition/'aujourd' hui'
Du coup ça ne m'arrange pas pour autant moi je voudrai récupérer le lien sans l'apostrophe https://dictionnaire.lerobert.com/definition/aujourd' hui
Je vais continuer à chercher
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
import re
exemple="'aujourd'hui'"
print("Le mot récupéré est :",exemple)
resultat=re.sub(r"^'(.{1,})'$", r"\1", exemple)
print("\nLe mot transformé par regex est :",resultat)
lien = "https://dictionnaire.lerobert.com/definition/"+exemple
print("\nLe lien est :",lien) |
Merci de vos réponses, ça fonctionne
Oups #JeSuisUnNoob
Merci beaucoup, je vais pouvoir terminer mon projet.