Ma question est toute simple, j'utilise HTMLParser pour r=E9cup=E9rer
certaines infos sur des pages web, et j'ai remarqu=E9 que certains
caract=E8res genre "=E9" ne passaient pas..
J'imagine qu'il y a quelquechose =E0 r=E9gler au niveau de l'encodage,
mais j'ai rien trouv=E9 dans la doc python.
Est-ce que quelqu'un qui a d=E9ja ete confronte a ce probleme pourrait
m'aiguiller un peu ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Laurent Pointal
Bonjour
Ma question est toute simple, j'utilise HTMLParser pour récupérer certaines infos sur des pages web, et j'ai remarqué que certains caractères genre "é" ne passaient pas..
J'imagine qu'il y a quelquechose à régler au niveau de l'encodage, mais j'ai rien trouvé dans la doc python.
Est-ce que quelqu'un qui a déja ete confronte a ce probleme pourrait m'aiguiller un peu ?
Oui, j'ai eu le problème et je l'ai résolu comme ça:
from HTMLParser import HTMLParser import codecs
class AnalyseParser(HTMLParser): # mes handlers
parser = AnalyseParser() f = codecs.open(filenamein, "rU", "iso-8859-15") parser.feed(f.read())
Bien sûr, remplacer le "iso-8859-15" par l'encodage qui va bien.
A+
Laurent.
Bonjour
Ma question est toute simple, j'utilise HTMLParser pour récupérer
certaines infos sur des pages web, et j'ai remarqué que certains
caractères genre "é" ne passaient pas..
J'imagine qu'il y a quelquechose à régler au niveau de l'encodage,
mais j'ai rien trouvé dans la doc python.
Est-ce que quelqu'un qui a déja ete confronte a ce probleme pourrait
m'aiguiller un peu ?
Oui, j'ai eu le problème et je l'ai résolu comme ça:
from HTMLParser import HTMLParser
import codecs
class AnalyseParser(HTMLParser):
# mes handlers
parser = AnalyseParser()
f = codecs.open(filenamein, "rU", "iso-8859-15")
parser.feed(f.read())
Bien sûr, remplacer le "iso-8859-15" par l'encodage qui va bien.
Ma question est toute simple, j'utilise HTMLParser pour récupérer certaines infos sur des pages web, et j'ai remarqué que certains caractères genre "é" ne passaient pas..
J'imagine qu'il y a quelquechose à régler au niveau de l'encodage, mais j'ai rien trouvé dans la doc python.
Est-ce que quelqu'un qui a déja ete confronte a ce probleme pourrait m'aiguiller un peu ?
Oui, j'ai eu le problème et je l'ai résolu comme ça:
from HTMLParser import HTMLParser import codecs
class AnalyseParser(HTMLParser): # mes handlers
parser = AnalyseParser() f = codecs.open(filenamein, "rU", "iso-8859-15") parser.feed(f.read())
Bien sûr, remplacer le "iso-8859-15" par l'encodage qui va bien.
A+
Laurent.
FB
Mille merci, je vais tester tout ca..
En fait je me suis apercu que mon probleme ne venait pas des "é" mais des entités html "é" par exemple..
Le principe est le meme je pense, reste a trouver une librairie qui fait la conversion.
Mille merci, je vais tester tout ca..
En fait je me suis apercu que mon probleme ne venait pas des "é" mais
des entités html "é" par exemple..
Le principe est le meme je pense, reste a trouver une librairie qui
fait la conversion.
En fait je me suis apercu que mon probleme ne venait pas des "é" mais des entités html "é" par exemple..
Le principe est le meme je pense, reste a trouver une librairie qui fait la conversion.
Doc Python 2.4:
13.4 htmlentitydefs -- Definitions of HTML general entities
entitydefs A dictionary mapping XHTML 1.0 entity definitions to their replacement text in ISO Latin-1.
name2codepoint A dictionary that maps HTML entity names to the Unicode codepoints.
Avec du s.replace(), ça devrais le faire.
FB
Merci :) Ca le fait en effet ! Vraiment Python, quel magnifique langage !
Par rapport a HTMLParser, j'ai parfois des comportements etranges : il decroche en plein milieu d'une page en générant une belle HTMLParserError (il detecte un EOF la ou il n'y en a pas...).
Sachant que je veux utiliser mon truc pour parser n'importe quel site web, il y a une difference importante avec le parser de htmllib ?
Merci :) Ca le fait en effet ! Vraiment Python, quel magnifique langage
!
Par rapport a HTMLParser, j'ai parfois des comportements etranges : il
decroche en plein milieu d'une page en générant une belle
HTMLParserError (il detecte un EOF la ou il n'y en a pas...).
Sachant que je veux utiliser mon truc pour parser n'importe quel site
web, il y a une difference importante avec le parser de htmllib ?
Merci :) Ca le fait en effet ! Vraiment Python, quel magnifique langage !
Par rapport a HTMLParser, j'ai parfois des comportements etranges : il decroche en plein milieu d'une page en générant une belle HTMLParserError (il detecte un EOF la ou il n'y en a pas...).
Sachant que je veux utiliser mon truc pour parser n'importe quel site web, il y a une difference importante avec le parser de htmllib ?