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


Python XMLTreeBuilder.close方法代码示例

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


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

示例1: runTest

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
	def runTest(self):
		'''Test ParseTreeBuilder class'''
		# - Test \n before and after h / p / pre
		# - Test break line into lines
		input = '''\
<?xml version='1.0' encoding='utf-8'?>
<zim-tree>
foo<h level="1">bar</h>baz

dus<pre>ja</pre>hmm

<h level="2">foo
</h>bar

dus ja <emphasis>hmm
dus ja
</emphasis>grrr

<strong>foo

bar
</strong>
<strike></strike><emphasis>   </emphasis>.
</zim-tree>'''

		wanted = '''\
<?xml version='1.0' encoding='utf-8'?>
<zim-tree>
foo

<h level="1">bar</h>
baz

dus

<pre>ja
</pre>
hmm

<h level="2">foo</h>
bar

dus ja <emphasis>hmm</emphasis>
<emphasis>dus ja</emphasis>
grrr

<strong>foo</strong>

<strong>bar</strong>

   .
</zim-tree>'''

		# For some reason this does not work with cElementTree.XMLBuilder ...
		from xml.etree.ElementTree import XMLTreeBuilder
		builder = XMLTreeBuilder(target=ParseTreeBuilder())
		builder.feed(input)
		root = builder.close()
		tree = ParseTree(root)
		self.assertEqualDiff(tree.tostring(), wanted)
开发者ID:damiansimanuk,项目名称:texslide,代码行数:62,代码来源:formats.py

示例2: parse_xml

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
def parse_xml(request, user):
    SoftLine.objects.filter(user=user.id).delete()
    # SoftLine.objects.all().delete()
    # print(request.POST)
    loader = InstalledSoftwareLoader()
    parser = XMLTreeBuilder(target=loader)
    parser.feed(request)
    # with open(file_name, 'rt') as f:
    # 	for line in f:
    # 		parser.feed(line)
    parser.close()
    for item in loader.items:
        line = SoftLine.objects.create(name=item.name, version=item.version, user=user)
        # print("Item => '%s'\n" % item.name)

    return len(loader.items)
开发者ID:InvisibleMan,项目名称:Software-Inspector,代码行数:18,代码来源:api.py

示例3: get_tree_from_xml

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
def get_tree_from_xml(xml):
	# For some reason this does not work with cElementTree.XMLBuilder ...
	from xml.etree.ElementTree import XMLTreeBuilder
	builder = XMLTreeBuilder()
	builder.feed(xml)
	root = builder.close()
	return ParseTree(root)
开发者ID:damiansimanuk,项目名称:texslide,代码行数:9,代码来源:pageview.py

示例4: parse_xml

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
    def parse_xml(self, raw_xml, parser=None):
        if not parser:
            parser = XMLTreeBuilder()

        parser.feed(raw_xml)

        self._root = parser.close()
        return self._root
开发者ID:pombredanne,项目名称:opentrackings,代码行数:10,代码来源:utils.py

示例5: read_generated_namelist

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
def read_generated_namelist(nml_file=None):
    """
    This will read a set of previously generated namelists from a file.
    """

    if not nml_file:
        # No file specified
        return None
    else:
        read_dict = {}
        target = InputXMLToNamelist(read_dict)
        parser = XMLTreeBuilder(target=target)
        with open(nml_file,'rt') as f:
            for line in f:
                parser.feed(line)
        parser.close()
        
    return read_dict
开发者ID:ZedThree,项目名称:helen,代码行数:20,代码来源:launcher.py

示例6: get_unread_count

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
 def get_unread_count(self):
     url = self.urls['reader'] + self.urls['unread-count']
     data = self.get_results(url)
     if data is None:
         return
     tree = XMLTreeBuilder()
     tree.feed(data)
     root_object = tree.close()
     li = root_object.getchildren()[1]
     counts = []
     for obj in li:
         feed_id, count, timestamp = \
             [ele.text for ele in obj.getchildren()]
         counts.append((feed_id, count, timestamp))
     return counts
开发者ID:evaryont,项目名称:noteo,代码行数:17,代码来源:GoogleReader.py

示例7: get_subscriptions

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
 def get_subscriptions(self):
     url = self.urls['reader'] + self.urls['subscription-list']
     data = self.get_results(url)
     if data is None:
         return
     tree = XMLTreeBuilder()
     tree.feed(data)
     root_object = tree.close()
     li = root_object.getchildren()[0]
     feeds = {}
     for obj in li:
         feed_id = obj.getchildren()[0].text
         title = obj.getchildren()[1].text
         feeds[feed_id] = title
     return feeds
开发者ID:evaryont,项目名称:noteo,代码行数:17,代码来源:GoogleReader.py

示例8: parseXRDS

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
def parseXRDS(text):
    """Parse the given text as an XRDS document.

    @return: ElementTree containing an XRDS document

    @raises XRDSError: When there is a parse error or the document does
        not contain an XRDS.
    """
    try:
        parser = XMLTreeBuilder()
        parser.feed(text)
        element = parser.close()
    except XMLError, why:
        exc = XRDSError('Error parsing document as XML')
        exc.reason = why
        raise exc
开发者ID:Hikari,项目名称:djangopeople.net,代码行数:18,代码来源:etxrd.py

示例9: body

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
    def body(self, xml):
        """ Body importer
        """
        if isinstance(xml, (str, unicode)):
            parser = XMLTreeBuilder()
            parser.feed(xml)
            tree = parser.close()
            tree = ElementTree(tree)
            elem = tree.getroot()
        else:
            elem = xml

        if elem.tag != 'object':
            raise AttributeError('Invalid xml root element %s' % elem.tag)

        name = elem.get('name')
        if not name:
            raise AttributeError('No name provided for object')

        if hasattr(self.context, '__name__') and (
            name != self.context.__name__):
            raise AttributeError(('XML root object name %s '
                                  'should match context name %s') % (
                                      name, self.context.__name__))

        for child in elem.getchildren():
            if child.tag == 'property':
                self.attribute = child
            elif child.tag == 'object':
                self.child = child

        wftool = getToolByName(self.context, 'portal_workflow')
        state = wftool.getInfoFor(self.context, 'review_state', '(Unknown)')
        if state != 'published':
            try:
                wftool.doActionFor(self.context, 'publish',
                                   comment='Initial import')
            except Exception, err:
                logger.exception(err)
开发者ID:avoinea,项目名称:av.rssnews,代码行数:41,代码来源:base.py

示例10: start

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
from xml.etree.ElementTree import XMLTreeBuilder
class MaxDepth:                     # The target object of the parser
    maxDepth = 0
    depth = 0
    def start(self, tag, attrib):   # Called for each opening tag.
        self.depth += 1
        if self.depth > self.maxDepth:
            self.maxDepth = self.depth
    def end(self, tag):             # Called for each closing tag.
        self.depth -= 1
    def data(self, data):
        pass            # We do not need to do anything with data.
    def close(self):    # Called when all data has been parsed.
        return self.maxDepth
target = MaxDepth()
parser = XMLTreeBuilder(target=target)
n = int(raw_input())
exampleXml = ""
for _ in range(n):
    exampleXml += raw_input()+"\n"
parser.feed(exampleXml)
print parser.close()-1
开发者ID:ajinkya007,项目名称:Competitive-Coding-Solutions,代码行数:24,代码来源:XML2+-+Find+the+maximum+depth.py

示例11: start

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
    def start(self, tag, attrib):
        if tag != "outline":
            # Ignora qualsiasi al di fuori di outline
            return
        if not attrib.get("xmlUrl"):
            # Ricorda il gruppo corrente
            self.group_name = attrib["text"]
        else:
            # Scrive una voce di podcast
            self.writer.writerow((self.group_name, attrib["text"], attrib["xmlUrl"], attrib.get("htmlUrl", "")))

    def end(self, tag):
        # Ignora i tag di chiusura
        pass

    def data(self, data):
        # Ignora i dati all'interno dei nodi
        pass

    def close(self):
        # Nulla di speciale da fare qui
        return


target = PodcastListToCSV(sys.stdout)
parser = XMLTreeBuilder(target=target)
with open("podcasts.opml", "rt") as f:
    for line in f:
        parser.feed(line)
parser.close()
开发者ID:robertopauletto,项目名称:PyMOTW-it_2.0,代码行数:32,代码来源:ElementTree_podcast_csv_treebuilder.py

示例12: parse

# 需要导入模块: from xml.etree.ElementTree import XMLTreeBuilder [as 别名]
# 或者: from xml.etree.ElementTree.XMLTreeBuilder import close [as 别名]
 def parse(self, source, parser=None):
     if not parser:
         parser = XMLTreeBuilder()
     parser.feed(source)
     self._root = parser.close()
     return self._root
开发者ID:koto,项目名称:iplex_adblock,代码行数:8,代码来源:IplexRewriter.py


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