Bonjour à tous,
J'ai un probleme bête (encore) d'expression réguliere ..
Je veux parser un fichier genbank pour en recuperer entre autre la taxonomie.
Or comme celle-ci se trouve sur plusieurs lignes les codes les autres codes ne marchent pas..
Donc pour celui-là je recupere l'entree en XML .
J'obtiens un truc du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 handle = Entrez.efetch(db = "Nucleotide", id=identifiant, rettype="xml") result = handle.read() print result
je voufrais recuperer tout ce qui est entre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8... </OrgName_mod> <OrgName_lineage>Eukaryota; Metazoa; Arthropoda; Hexapoda; Insecta; Pterygota; Neoptera; Endopterygota; Hymenoptera; Apocrita; Aculeata; Apoidea; Apidae; Apis</OrgName_lineage> <OrgName_gcode>1</OrgName_gcode> ... ....
<OrgName_lineage> et </OrgName_lineage>
J'essaye de faire qqch comme :
mais ça donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 taxonomie = (re.search("<OrgName_lineage>([\w\s\n]+)",result)).group(1)
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Eukaryota
et ça donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 taxonomie = (re.search("<OrgName_lineage>([\w\s\n]+</OrgName_lineage>", result)).group(1)
AttributeError: 'NoneType' object has no attribute 'group'
Je ne sais pas comment faire ...
Est-ce que quelqu'un aurait une idee s'il vous plait?
Merci ppar avance.
Partager