Skip to content

Instantly share code, notes, and snippets.

@gelim
Created October 21, 2010 17:26
Show Gist options
  • Save gelim/638908 to your computer and use it in GitHub Desktop.
Save gelim/638908 to your computer and use it in GitHub Desktop.
lxml.etree & StringIO strangeness
import StringIO, lxml.etree
xmldata="<root>data</root>"
buffer=StringIO.StringIO(xmldata)
for event, element in lxml.etree.iterparse(buffer):
print "%s %s %s" % (event, element.tag, element.text)
buffer.close()
buffer=StringIO.StringIO()
buffer.write(xmldata)
buffer.seek(0) # YAY! thanks nosklo (#python@freenode)
for event, element in lxml.etree.iterparse(buffer):
print "%s %s %s" % (event, element.tag, element.text)
buffer.close()
@nosklo
Copy link

nosklo commented Oct 21, 2010

your second code doesn't seek back to beginning. Use .seek(0)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment