python - Comment échapper automatiquement '<abc>' lorsque vous rencontrez de tels caractères d'échappement HTML sous python3?
typecho
typecho 2017-06-12 09:27:01
0
1
1044

Je suis nouveau sur Python lors de l'utilisation du robot scray, j'ai rencontré les caractères spéciaux du HTML, j'ai donc cherché dans la documentation sur Baidu :

import HTMLParser
html_parser = HTMLParser.HTMLParser()
s = '&l t;abc&g t;&nbs p;' #Un espace est laissé pour éviter que la page Web ne s'échappe
s = html_parser.unescape(s)

Invite d'exécution :
import markupbase
ImportError : aucun module nommé 'markupbase'


Avec l'aide d'un logiciel de traduction, j'ai trouvé la deuxième méthode en lisant la documentation officielle de HTMLParser

à partir de html.parser importer HTMLParser

classe MyHTMLParser(HTMLParser):

def handle_data(self, data):
    print(data)
    return data

parser = MyHTMLParser()
s = '&l t;abc&g t;&nbs p;' #Un espace est laissé pour éviter que la page Web ne s'échappe
ss=parser.feed(s)

La deuxième méthode a été testée avec succès. Le problème rencontré est que la phrase de données de retour n'est pas valide ?


Excusez-moi, existe-t-il un moyen de résoudre le problème d'échappement avec seulement quelques lignes de code ? S'il n'y a pas de deuxième méthode, comment puis-je obtenir la valeur de retour ?

typecho
typecho

Following the voice in heart.

répondre à tous(1)
某草草
from html.parser import HTMLParser
html_parser = HTMLParser()
s = '<abc>&nbsp;'
txt = html_parser.unescape(s)
print(txt)
# 结果:<abc>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal