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 :

Problème avec HTMLparser


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2013
    Messages : 4
    Par défaut Problème avec HTMLparser
    Bonjour,

    dans le cadre d'un projet, j'ai besoin de parser avec HTMLparser un fichier HTML, dont voici un extrait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <TR>
    	<TD VALIGN="top"><B>Date of Result</B></TD>
    	<TD COLSPAN="2"><B>Fri Feb 01 20:53:02 2013</B></TD>
    </TR>
                    <TR>
    <TD>MLST clonal complex affiliation</TD><TD colspan="2"><strong>CC30</strong></TD>
    </TR>
    je souhaite uniquement récupérer certaines informations qui sont suivies d'un titre, comme par exemple le cas de la date juste au dessus. je me suis servi de booléen mais cela ne marche que si les informations se situent sur la même ligne, comme pour le cas du CC30

    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
     
    def handle_data(self,data):
    	#recuperation de la date
    	if self.booleandate == 1 :
    		self.date = data
    		print "date : ",self.date
    		self.booleandate = 0
    	if data == "Date of Result":
    		self.booleandate=1
     
    	#recuperation du complexe clonale
    	if self.booleanCC == 1 :
    		self.complexclonale = data
    		print "complexclonale : ",self.complexclonale
    		self.booleanCC = 0
    	if data == "MLST clonal complex affiliation" :
    		self.booleanCC = 1
    le print pour le complexclonale renvoie la bonne valeur, mais le print de la date me retourne des espaces, et j'ai pu remarqué que la fonction handle_data récupéré des espaces et des tabulations à cet endroit du fichier et pas uniquement que le texte. J'ai tenté de contourner la récupération de ces espaces, mais aucun moyen. Quelqu'un aurait-il une solution s'il vous plaît ?

    Merci d'avance pour votre aide.

    Un jeune étudiant bioinformaticien qui commence à désespérer

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 48
    Par défaut
    Y a moyen que tu ailles lorgner du coté de BeautifulSoup ?
    Parce que c'est excellent comme bibliothèque pour parser du html (et du html bien crado, je parle en connaissance de cause...), et c'est simple d'utilisation.
    Personnellement, je n'ai jamais réussi à me plonger dans les parseurs html incorporé de python.

    Après, c'est une suggestion, et je suis désolé de ne pas pouvoir te répondre.

Discussions similaires

  1. HTMLParser et problème avec le nombre de requètes
    Par frremu dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 29/06/2010, 14h18
  2. Problème avec HTMLParser
    Par Redmaroc dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 11/06/2008, 21h31
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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