本文整理汇总了Python中xml.sax.saxutils.XMLFilterBase.endElement方法的典型用法代码示例。如果您正苦于以下问题:Python XMLFilterBase.endElement方法的具体用法?Python XMLFilterBase.endElement怎么用?Python XMLFilterBase.endElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xml.sax.saxutils.XMLFilterBase
的用法示例。
在下文中一共展示了XMLFilterBase.endElement方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
if not self._eat_tag:
XMLFilterBase.endElement(self, name)
if name == 'text' and self._catch_full_line:
self._catch_full_line = False
elif name == 'dialogue_act' and self._write_full_line:
self._write_full_line = False
if len(self._full_line) < self._da_line_len:
self._whole_line.append("... (missing)")
self.errorCallback()
line = self._full_line[:self._da_line_len]
del self._full_line[:self._da_line_len]
self._da_line_len = 0
line = u' '.join(line)
writer = self.getContentHandler()
writer.characters('\n' + ' '*self.TAG_INDENT)
attrs = {'type': self.text_type}
attrs.update(self._da_attrs)
writer.startElement('parametrized_act', attrs)
writer.characters('\n' + ' '*self.CHAR_INDENT)
writer.characters(line)
writer.characters('\n' + ' '*self.TAG_INDENT)
writer.endElement('parametrized_act')
elif name == 'utterance':
if self._full_line and self._da_count != 0:
self.errorCallback()
elif name == 'parametrized_act':
self._eat_tag = False
示例2: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
if len(self.header) == 1 or name == 'xcb':
XMLFilterBase.endElement(self, name)
if name == 'xcb':
self.header.pop(0)
elif name == 'struct' or name == 'union':
assert getattr(self, name) is not None
self.setTypeSize(getattr(self, name), self.totalsize)
setattr(self, name, None)
del self.totalsize
示例3: test_filter_basic
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def test_filter_basic():
result = StringIO()
gen = XMLGenerator(result)
filter = XMLFilterBase()
filter.setContentHandler(gen)
filter.startDocument()
filter.startElement("doc", {})
filter.characters("content")
filter.ignorableWhitespace(" ")
filter.endElement("doc")
filter.endDocument()
return result.getvalue() == start + "<doc>content </doc>"
示例4: test_filter_basic
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def test_filter_basic(self):
result = BytesIO()
gen = XMLGenerator(result)
filter = XMLFilterBase()
filter.setContentHandler(gen)
filter.startDocument()
filter.startElement("doc", {})
filter.characters("content")
filter.ignorableWhitespace(" ")
filter.endElement("doc")
filter.endDocument()
self.assertEqual(result.getvalue(), start + b"<doc>content </doc>")
示例5: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
self._complete_text_node()
XMLFilterBase.endElement(self, name)
return
示例6: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
if name == 'import':
self.ensure(self.inimport)
self.inimport = None
return
XMLFilterBase.endElement(self, name)
示例7: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
if self.in_universe >= 0:
self.in_universe -= 1
if self.in_universe == -1:
# send the recorded tags in the new format
if not (self.cell is None and self.cell_active is None):
if self.cell is None:
self.cell = numpy.identity(3, float)*20.0
if self.cell_active is None:
self.cell_active = numpy.zeros(3, bool)
XMLFilterBase.startElement(self, "unit_cell", Attributes({"label": "cell"}))
# matrix
XMLFilterBase.startElement(self, "array", Attributes({"label": "matrix"}))
XMLFilterBase.startElement(self, "shape", Attributes({}))
XMLFilterBase.characters(self, "3 3")
XMLFilterBase.endElement(self, "shape")
XMLFilterBase.startElement(self, "cells", Attributes({}))
XMLFilterBase.characters(self, " ".join(str(v) for v in self.cell.ravel()))
XMLFilterBase.endElement(self, "cells")
XMLFilterBase.endElement(self, "array")
# matrix
XMLFilterBase.startElement(self, "array", Attributes({"label": "active"}))
XMLFilterBase.startElement(self, "shape", Attributes({}))
XMLFilterBase.characters(self, "3")
XMLFilterBase.endElement(self, "shape")
XMLFilterBase.startElement(self, "cells", Attributes({}))
XMLFilterBase.characters(self, " ".join(str(v) for v in self.cell_active))
XMLFilterBase.endElement(self, "cells")
XMLFilterBase.endElement(self, "array")
# end unit cell
XMLFilterBase.endElement(self, "unit_cell")
if self.recording is None:
XMLFilterBase.endElement(self, name)
else:
if name == "array" and self.recording == "cell":
self.recording = None
words = (" ".join(self.cell)).split()[2:]
self.cell = numpy.array([float(v) for v in words])
self.cell.shape = (3,3)
if name == "array" and self.recording == "cell_active":
self.recording = None
words = (" ".join(self.cell_active)).split()[1:]
self.cell_active = numpy.array([eval(v) for v in words])
self.cell_active.shape = (3,)
示例8: endElement
# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import endElement [as 别名]
def endElement(self, name):
XMLFilterBase.endElement(self, name)
if name == 'xcb':
self.endScope()