Lo que necesito es solo obtener el texto de la etiqueta correspondiente y persistir en la base de datos. Como el archivo xml es grande (4.5GB) estoy usando sax. Usé el caracteres del método para obtener el texto y ponerlo en un diccionario. Sin embargo, cuando estoy imprimiendo el texto en el método endElement obtengo una nueva línea en lugar del texto.¿Cómo puedo obtener el texto entre las etiquetas usando el analizador de Python SAX?
Aquí está mi código:
def characters(self,content):
text = unescape(content))
self.map[self.tag]=text
def startElement(self, name, attrs):
self.tag = name
def endElement (self, name)
if (name=="sometag")
print self.map[name]
Gracias de antemano.
Gracias! El siguiente código es un accidente o debería ser así? self.map [name] == '' – ablimit
¿Dónde puedo encontrar una referencia a este comportamiento? El texto de la etiqueta está recortado por el procesador SAX. los personajes pueden ser llamados varias veces. – ablimit
Lo sentimos, un error tipográfico. He editado la respuesta. self.map [name] = '' – codeape