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


Python ElementTree.findtext方法代码示例

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


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

示例1: App

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findtext [as 别名]
class App(object):
	def __init__(self, env, source_dir):
		self.env = env
		self.source_dir = fix_path(source_dir)
		self.resources_dir = os.path.join(self.source_dir, 'Resources')
		self.modules = []
		self.read_manifest()
		self.read_tiapp()

		# There are some basic attributes that we need to know to continue.
		# If these weren't passed, we should abort here.
		for attr in ['name', 'id', 'guid', 'version', 'runtime_version']:
			if not hasattr(self, attr):
				raise Exception('Neither the tiapp.xml nor the manifest defined "%s"' % attr)

		# Cache the SDK directory for the runtime here, because we'll
		# need it quite a bit if we do staging and packaging.
		self.sdk_dir = fix_path((self.env.get_sdk_dir(self.runtime_version)))

	def read_manifest(self):
		manifest_path = p.join(self.source_dir, "manifest")
		if not p.exists(manifest_path):
			raise Exception("Could not find manifest at %s" % manifest_path)

		contents = codecs.open(manifest_path, 'r', 'utf-8').read().split('\n')
		for line in contents:
			if line.find(u':') == -1:
				continue
			(key, value) = line.split(':', 1)
			key = key.strip()
			value = value.strip()
			if key == u'#appname': self.name = value
			elif key == u'#appid': self.id = value
			elif key == u'#guid': self.guid = value
			elif key == u'#description': self.description = value
			elif key == u'#image': self.image = value
			elif key == u'#publisher': self.publisher = value
			elif key == u'#url': self.url = value
			elif key == u'#version': self.version = value
			elif key == u'#loglevel': self.loglevel = value
			elif key == u'#stream': self.stream = value
			elif key.find(u'#') == 0: continue
			else:
				# This is for staging applications in our source directory.
				# If no version is specified for this application, just use
				# the current build environment version.
				if not value:
					value = self.env.version

				if key == u'runtime': self.runtime_version = value
				elif key == u'sdk': self.sdk_version = value
				elif key == u'mobilesdk': self.mobilesdk_version = value
				else:
					self.modules.append((key, value))

	def get_tiapp_element_as_prop(self, element_name, prop):
		t = self.tiapp.findtext(element_name)
		if t: self.__setattr__(prop, unicode(t))

	def read_tiapp(self):
		tiapp_path = p.join(self.source_dir, "tiapp.xml")
		if not p.exists(tiapp_path):
			raise Exception("Could not find tiapp.xml at %s" % tiapp_path)

		self.tiapp = ElementTree()
		self.tiapp.parse(tiapp_path)
		self.get_tiapp_element_as_prop('name', 'name')
		self.get_tiapp_element_as_prop('id', 'id')
		self.get_tiapp_element_as_prop('version', 'version')
		self.get_tiapp_element_as_prop('icon', 'image')
		self.get_tiapp_element_as_prop('description', 'description')
		self.get_tiapp_element_as_prop('publisher', 'publisher')
		self.get_tiapp_element_as_prop('url', 'url')
		self.get_tiapp_element_as_prop('log-level', 'loglevel')

	def write_manifest(self, path):
		f = codecs.open(p.join(path, 'manifest'), 'wb', 'utf-8')

		def write_line(str):
			f.write(str.replace(u'\n', u'') + '\n')

		write_line(u'#appname: ' + self.name)
		write_line(u'#appid: ' + self.id)
		write_line(u'#guid: ' + self.guid)
		write_line(u'#version: ' + self.version)
		if hasattr(self, 'image'):
			write_line(u'#image: ' + self.image)
		if hasattr(self, 'publisher'):
			write_line(u'#publisher: ' + self.publisher)
		if hasattr(self, 'description'):
			write_line(u'#description: ' + self.description)
		if hasattr(self, 'url'):
			write_line(u'#url: ' + self.url)
		if hasattr(self, 'loglevel'):
			write_line(u'#loglevel: ' + self.url)
		if hasattr(self, 'stream'):
			write_line(u'#stream: ' + self.url)

		write_line(u'runtime: ' + self.runtime_version)
		if hasattr(self, 'sdk_version'):
#.........这里部分代码省略.........
开发者ID:saga,项目名称:titanium_desktop,代码行数:103,代码来源:app.py

示例2: App

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findtext [as 别名]
class App(object):
    def __init__(self, env, source_dir):
        self.env = env
        self.source_dir = fix_path(source_dir)
        self.resources_dir = os.path.join(self.source_dir, "Resources")
        self.modules = []
        self.read_manifest()
        self.read_tiapp()

        # There are some basic attributes that we need to know to continue.
        # If these weren't passed, we should abort here.
        for attr in ["name", "id", "guid", "version", "runtime_version"]:
            if not hasattr(self, attr):
                raise Exception('Neither the tiapp.xml nor the manifest defined "%s"' % attr)

                # Cache the SDK directory for the runtime here, because we'll
                # need it quite a bit if we do staging and packaging.
        self.sdk_dir = fix_path((self.env.get_sdk_dir(self.runtime_version)))

    def read_manifest(self):
        manifest_path = p.join(self.source_dir, "manifest")
        if not p.exists(manifest_path):
            raise Exception("Could not find manifest at %s" % manifest_path)

        contents = codecs.open(manifest_path, "r", "utf-8").read().split("\n")
        for line in contents:
            if line.find(u":") == -1:
                continue
            (key, value) = line.split(":", 1)
            key = key.strip()
            value = value.strip()
            if key == u"#appname":
                self.name = value
            elif key == u"#appid":
                self.id = value
            elif key == u"#guid":
                self.guid = value
            elif key == u"#description":
                self.description = value
            elif key == u"#image":
                self.image = value
            elif key == u"#publisher":
                self.publisher = value
            elif key == u"#url":
                self.url = value
            elif key == u"#version":
                self.version = value
            elif key == u"#loglevel":
                self.loglevel = value
            elif key == u"#stream":
                self.stream = value
            elif key.find(u"#") == 0:
                continue
            else:
                # This is for staging applications in our source directory.
                # If no version is specified for this application, just use
                # the current build environment version.
                if not value:
                    value = self.env.version

                if key == u"runtime":
                    self.runtime_version = value
                elif key == u"sdk":
                    self.sdk_version = value
                elif key == u"mobilesdk":
                    self.mobilesdk_version = value
                else:
                    self.modules.append((key, value))

    def get_tiapp_element_as_prop(self, element_name, prop):
        t = self.tiapp.findtext(element_name)
        if t:
            self.__setattr__(prop, unicode(t))

    def read_tiapp(self):
        tiapp_path = p.join(self.source_dir, "tiapp.xml")
        if not p.exists(tiapp_path):
            raise Exception("Could not find tiapp.xml at %s" % tiapp_path)

        self.tiapp = ElementTree()
        self.tiapp.parse(tiapp_path)
        self.get_tiapp_element_as_prop("name", "name")
        self.get_tiapp_element_as_prop("id", "id")
        self.get_tiapp_element_as_prop("version", "version")
        self.get_tiapp_element_as_prop("icon", "image")
        self.get_tiapp_element_as_prop("description", "description")
        self.get_tiapp_element_as_prop("publisher", "publisher")
        self.get_tiapp_element_as_prop("url", "url")
        self.get_tiapp_element_as_prop("log-level", "loglevel")

    def write_manifest(self, path):
        f = codecs.open(p.join(path, "manifest"), "wb", "utf-8")

        def write_line(str):
            f.write(str.replace(u"\n", u"") + "\n")

        write_line(u"#appname: " + self.name)
        write_line(u"#appid: " + self.id)
        write_line(u"#guid: " + self.guid)
        write_line(u"#version: " + self.version)
#.........这里部分代码省略.........
开发者ID:jvkops,项目名称:titanium_desktop,代码行数:103,代码来源:app.py


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