当前位置: 首页>>代码示例>>Python>>正文


Python XMLFilterBase.startElement方法代码示例

本文整理汇总了Python中xml.sax.saxutils.XMLFilterBase.startElement方法的典型用法代码示例。如果您正苦于以下问题:Python XMLFilterBase.startElement方法的具体用法?Python XMLFilterBase.startElement怎么用?Python XMLFilterBase.startElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在xml.sax.saxutils.XMLFilterBase的用法示例。


在下文中一共展示了XMLFilterBase.startElement方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
	def startElement(self, name, attrs):
		if name == 'xcb':
			self.header.insert(0, attrs['header'])
		elif name == 'field':
			size = self.types.get(attrs['type'], 0)
			if self.struct is not None:
				self.totalsize += size
			elif self.union is not None:
				self.totalsize = max(self.totalsize, size)
			attrs = AttributesUnion(attrs, bytes=str(size))
		elif name == 'pad':
			assert self.union is None
			if self.struct is not None:
				self.totalsize += int(attrs['bytes'])
		elif name == 'xidtype':
			self.setTypeSize(attrs['name'], 4)
		elif name == 'typedef':
			self.setTypeSize(attrs['newname'], self.types[attrs['oldname']])
		elif name == 'struct' or name == 'union':
			assert self.struct is None and self.union is None
			setattr(self, name, attrs['name'])
			self.totalsize = 0

		if len(self.header) == 1 or name == 'xcb':
			XMLFilterBase.startElement(self, name, attrs)
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:27,代码来源:size.py

示例2: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
 def startElement(self, name, attrs):
     if name == 'text' and attrs.get('type') == self._new_type:
         self._eat_tag = True
     else:
         self._eat_tag = False
     if name == 'text' and attrs.get('type') == self._after:
         self._write_tag = True
     if not self._eat_tag:
         XMLFilterBase.startElement(self, name, attrs)
开发者ID:pombredanne,项目名称:extended-hidden-vector-state-parser,代码行数:11,代码来源:parametrizer.py

示例3: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
	def startElement(self, name, attrs):
		assert self.inimport is None
		if name == 'import':
			self.inimport = ""
			return
		XMLFilterBase.startElement(self, name, attrs)
		if name == 'xcb':
			seen[attrs['header']] = True
			self.ensure('xproto')
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:11,代码来源:import.py

示例4: test_filter_basic

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [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>"
开发者ID:Birdbird,项目名称:StartPage,代码行数:16,代码来源:test_sax2.py

示例5: test_filter_basic

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [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>")
开发者ID:Eyepea,项目名称:cpython,代码行数:16,代码来源:test_sax.py

示例6: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
 def startElement(self, name, attrs):
     if self.in_universe >= 0:
         self.in_universe += 1
     if name == "zml_file":
         if attrs.getValue("version") != "0.1":
             raise FilterError, "Only format 0.1 is supported in this handler."
         attrs = Attributes({"version": "0.2"})
     elif name == "model_object" and attrs["class"] == "Universe":
         self.in_universe = 0
     elif self.in_universe == 1:
         if name == "array" and attrs["label"] == "cell":
             self.recording = "cell"
             self.cell = []
         elif name == "array" and attrs["label"] == "cell_active":
             self.recording = "cell_active"
             self.cell_active = []
     if self.recording is None:
         XMLFilterBase.startElement(self, name, attrs)
开发者ID:molmod,项目名称:zeobuilder,代码行数:20,代码来源:zml.py

示例7: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
	def startElement(self, name, attrs):
		attnames = []
		if name == 'xcb':
			self.startScope(attrs['header'])
		elif name in ['struct', 'union', 'xidtype', 'enum', 'event', 'eventcopy', 'error', 'errorcopy']:
			self.declareType(attrs['name'])
			attnames = ['name']
			if name.endswith('copy'):
				attnames.append('ref')
		elif name == 'typedef':
			self.declareType(attrs['newname'])
			attnames = ['oldname', 'newname']
		elif name == 'valueparam':
			attnames = ['value-mask-type']
		elif attrs.has_key('type'):
			attnames = ['type']
		newattrs = {}
		for attname in attnames:
			newattrs[attname] = self.getQualifiedType(attrs[attname])
		if newattrs:
			attrs = AttributesUnion(attrs, **newattrs)
		XMLFilterBase.startElement(self, name, attrs)
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:24,代码来源:type.py

示例8: startElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [as 别名]
 def startElement(self, name, attrs):
     self._complete_text_node()
     XMLFilterBase.startElement(self, name, attrs)
     return
开发者ID:ninemoreminutes,项目名称:openassign-server,代码行数:6,代码来源:saxtools.py

示例9: endElement

# 需要导入模块: from xml.sax.saxutils import XMLFilterBase [as 别名]
# 或者: from xml.sax.saxutils.XMLFilterBase import startElement [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,)
开发者ID:molmod,项目名称:zeobuilder,代码行数:46,代码来源:zml.py


注:本文中的xml.sax.saxutils.XMLFilterBase.startElement方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。