[New-bugs-announce] [issue20612] cElementTree has problems with StringIO object containing unicode content
Allan Crooks
report at bugs.python.org
Wed Feb 12 21:16:39 CET 2014
New submission from Allan Crooks:
There seems to be a specific issue when using cElementTree.parse on a StringIO object containing unicode text - it generates a ParseError.
I've tried variations of ElementTree and cElementTree, variations of StringIO and cStringIO, and used str and unicode types. It seems there is one combination of these that generates the problem. I tried this on Python 2.7.5 - this bit of code shows the inconsistency we've got:
>>> from xml.etree import ElementTree as ET, cElementTree as CET
>>> from StringIO import StringIO as SIO
>>> from cStringIO import StringIO as CSIO
>>> xml, uxml = '<simple />', u'<simple />'
>>>
>>> def parse(etree_impl, strio_class, text):
... try:
... return etree_impl.parse(strio_class(text))
... except Exception as e:
... return 'ERROR: ' + repr(e)
...
>>> for etree_var in 'ET CET'.split():
... for sio_var in 'SIO CSIO'.split():
... for xml_var in 'xml uxml'.split():
... print etree_var, sio_var, xml_var,
... print parse(vars()[etree_var], vars()[sio_var], vars()[xml_var])
...
ET SIO xml <xml.etree.ElementTree.ElementTree object at 0x7f92c795ec90>
ET SIO uxml <xml.etree.ElementTree.ElementTree object at 0x7f92c795ec90>
ET CSIO xml <xml.etree.ElementTree.ElementTree object at 0x7f92c795ec90>
ET CSIO uxml <xml.etree.ElementTree.ElementTree object at 0x7f92c795ec90>
CET SIO xml <ElementTree object at 0x7f92c795ec90>
CET SIO uxml ERROR: ParseError('no element found: line 1, column 0',)
CET CSIO xml <ElementTree object at 0x7f92c795ec90>
CET CSIO uxml <ElementTree object at 0x7f92c795ec90>
----------
components: XML
messages: 211114
nosy: amcone
priority: normal
severity: normal
status: open
title: cElementTree has problems with StringIO object containing unicode content
type: behavior
versions: Python 2.7
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue20612>
_______________________________________
More information about the New-bugs-announce
mailing list