Python : modifier balise html contenu ds var.

Fermé
Mamy - 6 avril 2008 à 14:51
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 7 avril 2008 à 09:13
Bonjour,

Je possède une variable python contenant le code d'une page html
maVariable=<html xmlns="http://www.w3.org/1999/xhtml"><head>...


J'aimerais trouver la balise <title> et la remplacer par <title>Coucou.


Ainsi, j'aurai mon titre de page + le texte Coucou

Comment peut on faire ça avec python ?

J'ai essayé le re.sub sans succès...


Merci d'avance

1 réponse

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
7 avril 2008 à 09:13
Tu peux effectivement utiliser re.sub, ou bien beautifulsoup (un peu lent, mais marche bien).


Petit exemple de remplacement avec BeautifulSoup (à adapter):

import BeautifulSoup
htmlpage = open('mapage.html','rb').read()
soup = BeautifulSoup.BeautifulSoup(htmlpage)
soup.done()
for titre in soup('span',{'class' : ['comptitle','titre']}):
    titre.name = 'h1'   # Convert span to h1
    del titre['class']  # Remove class
0