Maison >développement back-end >Tutoriel Python >python gère les caractères d'échappement HTML
L'exemple de cet article décrit comment Python gère les caractères d'échappement HTML. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Récemment, lorsque j'utilise Python pour traiter les données de pages Web, je rencontre souvent des caractères d'échappement HTML (également appelés entités de caractères HTML), tels que e4c055809b56ecdb151d3add53262afa Les entités de caractères sont généralement utilisées pour représenter des caractères réservés dans les pages Web. Par exemple, > est représenté par > pour empêcher le navigateur de penser qu'il s'agit d'une balise. Pour plus de détails, veuillez vous référer aux entités de caractères HTML de w3school. Bien qu’utiles, ils peuvent grandement affecter l’analyse des données Web. Afin de gérer ces caractères d'échappement, il existe les solutions suivantes :
1. Utilisez HTMLParser pour traiter
import HTMLParser html_cont = " asdfg>123<" html_parser = HTMLParser.HTMLParser() new_cont = html_parser.unescape(html_cont) print new_cont #new_cont = " asdfg>123<"
Reconvertir (seuls les espaces ne peuvent pas être reconvertis) :
import cgi new_cont = cgi.escape(new_cont) print new_cont #new_cont = " asdfg>123<"
2. Remplacer directement
html_cont = " asdfg>123<" new_cont = new_cont.replace(' ', ' ') print new_cont #new_cont = " asdfg>123<" new_cont = new_cont.replace('>', '>') print new_cont #new_cont = " asdfg>123<" new_cont = new_cont.replace('<', '<') print new_cont #new_cont = " asdfg>123<"
Je ne sais pas s'il existe une meilleure façon.
De plus, stackoverflow fournit une réponse à la gestion des caractères d'échappement en XML : python - Quelle est la meilleure façon de gérer les entités de type - dans les documents XML avec lxml ?
Pour plus d'articles liés au traitement python des caractères d'échappement HTML, veuillez faire attention au site Web PHP chinois !