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

Réseau/Web Python Discussion :

Chercher un chaine dans une page HTML


Sujet :

Réseau/Web Python

  1. #1
    Membre du Club Avatar de Mr Hyde
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 80
    Points : 62
    Points
    62
    Par défaut Chercher un chaine dans une page HTML
    Bonjour,

    Je suis en train de faire un programme qui communique avec un serveur...en fait, je fais appel a un script de login qui me renvoie tout une page HTML. Seulement, il n'y a qu'une petite partie de cette page qui m'interresse.

    J'aimerais savoir s'il est possible d'extraire une chaine au sein d'une page entière...une fonction du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    find("expression","fichier")
    Ou quelque chose du genre...merci d'avance!

  2. #2
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    Une fois que tu as transformé ton fichier en string, y'a la méthode find

    http://docs.python.org/lib/string-methods.html

    sinon y'a aussi le module htmllib qui permet de traiter les fichiers html

  3. #3
    Membre du Club Avatar de Mr Hyde
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    En fait, je souhaiterais récupperer une "sous partie" d'un lien situé dans ma page web:
    par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="http://www.monsite.com">
    Et bien j'aimerais pouvoir recuperer toutes les valeurs de href dans tous les liens dans ma page. J'ai entendu parler de htmlparser, mais je n'ai strictement rien compris...et a vrai dire, je uis un peu pris par le temps, je n'ai plus le temps de me plonger dans un module.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Points : 402
    Points
    402
    Par défaut
    Regarde du coté des expressions régulière et du module re (très simple si tu connais un peu le principe des regex)
    "There are two major products that come out of Berkeley: LSD and UNIX.
    We don't believe this to be a coincidence."
    - Jeremy S. Anderson

    La FAQ Python
    Les cours et tutoriels pour apprendre Python
    Le Forum Python

  5. #5
    Membre du Club Avatar de Mr Hyde
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    Merci getupa et guigui!

    Finalement, je me suis debrouillé avec HTMLParser, qui me récupère toutes les URL et la fonction find, qui m'a extrait le morceau de chaine qui m'interesse.

  6. #6
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    Je ne sais pas si ça peut t'intéresser.
    Voilà un code (récupéré dans le livre "Python en Concentré") qui permet de lister les liens d'une page html

    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 htmllib, formatter, urllib, urlparse
     
    p = htmllib.HTMLParser(formatter.NullFormatter())
    f = urllib.urlopen('http://www.python.org/index.html')
    BUFSIZE = 8192
    while True:
        donnees = f.read(BUFSIZE)
        if not donnees: break;
        p.feed(donnees)
    p.close()
    seen={}
    for url in p.anchorlist:
        if url in seen: continue
        seen[url] = True
        pieces = urlparse.urlparse(url)
        if pieces[0] == 'http':
            print urlparse.urlunparse(pieces)

  7. #7
    Membre du Club Avatar de Mr Hyde
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    Super, merci!
    C'est ce que j'avais fait, mais en plus court, donc c'est mieux!!

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

Discussions similaires

  1. recherche une chaine de caractère dans une page HTML
    Par ramzi_zi dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 06/08/2009, 19h31
  2. Insérer du XML dans une page HTML
    Par Shaman LizardKing dans le forum XML/XSL et SOAP
    Réponses: 14
    Dernier message: 04/05/2005, 07h27
  3. Réponses: 6
    Dernier message: 14/12/2004, 02h47
  4. Problème de chaine sur une page HTML
    Par Kerod dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 23/11/2004, 16h23
  5. [Applet] Ouvrir une applet dans une page HTML
    Par debutant java dans le forum Applets
    Réponses: 4
    Dernier message: 04/06/2004, 17h11

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