IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Questions sur une Regex


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 44
    Par défaut Questions sur une Regex
    Bonjour,

    Je voudrais faire une fonction qui extrait une donnée du code HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <tr><td>Or:</td><td>942 <img src="img/res2.gif" alt="Or" align="absmiddle" border="0"></td></tr>
    La donnée à extraire est "942" en chiffre et je sais qu'elle se trouve quelque part après "Or:".

    Comment je peux faire,

    merci infiniment

  2. #2
    Membre éprouvé Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Par défaut
    est ce que ceci pourrait convenir?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    s = '<tr><td>Or:</td><td>942 <img src="img/res2.gif" alt="Or" align="absmiddle" border="0"></td></tr>'
    v = s[20:23]

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 44
    Par défaut
    Merci julien.63. Mais en fait l'extrait de HTML fait partie d'une page WEB qui change tout le temps. Par contre l'extrait de code, lui ne change pas

  4. #4
    Membre éprouvé Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Par défaut
    alors, peut être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    s = '<tr><td>Or:</td><td>'
    where = pageHtml.find(s)
    v = pageHtml[where+20:where+23]
    j'ai pas testé, mais l'idée c'est de sortir la position de ta chaine de page html avec find. Ensuite tu extrais la valeur en sortant la position de la ligne + la position de ce qui t'interesse dans cette ligne...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 44
    Par défaut
    Merci,

    Je pense que ta solution marche aussi. En cherchant de mon coté, j'ai trouvé ça avec "Kodos" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    import re
     
    # common variables
     
    rawstr = r"""Or:\D*(\d*)\D*"""
     
    matchstr = """<tr><td>Or:</td><td>942 <img src="img/res2.gif" alt="Or" align="absmiddle" border="0"></td></tr>"""
     
     
    # method 2: using search function (w/ external flags)
    match_obj = re.search(rawstr, matchstr)
     
     
     
    # Retrieve group(s) by index
    group_1 = match_obj.group(1)

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 44
    Par défaut
    En fait les Regex marchent pour le texte que j'ai tapé.

    Par contre quand je passe à la variable qui contient tout le code HTML de la page aucune Regex ne marche plus !!!!

    Pourquoi ? Texte multiligne ? Caractères spéciaux ? Je me suis enérvé après Python que j'ai traité de tous les noms !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quelques questions sur une regex
    Par beegees dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/04/2009, 11h29
  2. Question sur les Regex. interdire une chaine
    Par cysboy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/05/2007, 13h49
  3. Question sur les regex, besoin d'une lumière
    Par Cladjidane dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/03/2007, 12h28
  4. [Newbies] Question sur une technologie XML a utiliser
    Par superraider dans le forum Windows
    Réponses: 3
    Dernier message: 21/10/2005, 10h01
  5. [jdbc] question sur une connection
    Par berg dans le forum JDBC
    Réponses: 2
    Dernier message: 10/09/2005, 08h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo