本文整理汇总了Python中xml.etree.cElementTree.SubElement方法的典型用法代码示例。如果您正苦于以下问题:Python cElementTree.SubElement方法的具体用法?Python cElementTree.SubElement怎么用?Python cElementTree.SubElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xml.etree.cElementTree
的用法示例。
在下文中一共展示了cElementTree.SubElement方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: writeElementString
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def writeElementString(self, name, value, defaultValue=None):
if isinstance(value, (GXIntEnum, GXIntFlag)):
raise ValueError("Datatype is enum.")
if not(value and self.skipDefaults) or value != defaultValue:
if value is None:
ET.SubElement(self.getTarget(), name)
elif isinstance(value, str):
ET.SubElement(self.getTarget(), name).text = value
elif isinstance(value, GXDateTime):
ET.SubElement(self.getTarget(), name).text = value.toFormatMeterString("%m/%d/%Y %H:%M:%S")
elif isinstance(value, bool):
if value:
ET.SubElement(self.getTarget(), name).text = "1"
else:
ET.SubElement(self.getTarget(), name).text = "0"
elif isinstance(value, int):
ET.SubElement(self.getTarget(), name).text = str(value)
elif isinstance(value, (bytearray, bytes)):
ET.SubElement(self.getTarget(), name).text = GXByteBuffer.hex(value)
elif isinstance(value, (float)):
ET.SubElement(self.getTarget(), name).text = str(value).replace(",", ".")
示例2: save
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def save(self, name, settings=None):
writer = GXXmlWriter()
objects = ET.Element("Objects")
for it in self:
node = ET.SubElement(objects, "GXDLMS" + GXDLMSConverter.objectTypeToString(it.objectType))
if it.shortName != 0:
ET.SubElement(node, "SN").text = str(it.shortName)
ET.SubElement(node, "LN").text = it.logicalName
if it.version != 0:
ET.SubElement(node, "Version").text = str(it.version)
if it.description:
ET.SubElement(node, "Description").text = it.description
if not settings or settings.values:
writer.objects = []
writer.objects.append(node)
it.save(writer)
str_ = minidom.parseString(ET.tostring(objects, encoding='utf-8', method='xml')).toprettyxml(indent=" ")
with open(name, "w") as f:
f.write(str_)
示例3: _generate_data_dictionary
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def _generate_data_dictionary(root, feature_names, target_name, target_values):
data_dict = ET.SubElement(root, 'DataDictionary')
data_field = ET.SubElement(data_dict, 'DataField')
data_field.set('name', target_name)
data_field.set('dataType', 'string')
data_field.set('optype', 'categorical')
print('[x] Generating Data Dictionary:')
for t in target_values:
value = ET.SubElement(data_field, 'Value')
value.set('value', t)
for f in feature_names:
data_field = ET.SubElement(data_dict, 'DataField')
data_field.set('name', f)
data_field.set('dataType', 'double')
data_field.set('optype', 'continuous')
print('\t[-] {}...OK!'.format(f))
return data_dict
示例4: create_bootstrap_aggregate_file
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def create_bootstrap_aggregate_file(self):
url = self.api.makeurl(['source', self.prj, 'bootstrap-copy', '_aggregate'])
root = ET.Element('aggregatelist')
a = ET.SubElement(root, 'aggregate',
{'project': '{}:0-Bootstrap'.format(self.api.crings)})
for package in self.bootstrap_packages():
p = ET.SubElement(a, 'package')
p.text = package
ET.SubElement(a, 'repository', {'target': 'bootstrap_copy', 'source': 'standard'})
ET.SubElement(a, 'repository', {'target': 'standard', 'source': 'nothing'})
ET.SubElement(a, 'repository', {'target': 'images', 'source': 'nothing'})
self.api.retried_PUT(url, ET.tostring(root))
示例5: check_one_source
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def check_one_source(self, flink, si):
package = si.get('package')
# If the package is an internal one (e.g _product)
if package.startswith('_'):
return None
# Ignore packages with an origing (i.e. with an origin
# different from the current project)
if si.find('originproject') != None:
return None
if package in ['rpmlint-mini-AGGR']:
return package # we should not freeze aggregates
ET.SubElement(flink, 'package', {'name': package, 'srcmd5': si.get('srcmd5'), 'vrev': si.get('vrev')})
return package
示例6: add_explicit_disable
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def add_explicit_disable(self, wipebinaries=False):
self._init_biarch_packages()
resulturl = self.makeurl(['source', self.project])
result = ET.fromstring(self.cached_GET(resulturl))
for pkg in self.packages:
changed = False
logger.debug("processing %s", pkg)
if not pkg in self.package_metas:
logger.error("%s not found", pkg)
continue
pkgmeta = self.package_metas[pkg]
build = pkgmeta.findall("./build")
if not build:
logger.debug('disable %s for %s', pkg, self.arch)
bn = pkgmeta.find('build')
if bn is None:
bn = ET.SubElement(pkgmeta, 'build')
ET.SubElement(bn, 'disable', { 'arch': self.arch })
changed = True
if changed:
try:
pkgmetaurl = self.makeurl(['source', self.project, pkg, '_meta'])
self.http_PUT(pkgmetaurl, data=ET.tostring(pkgmeta))
if self.caching:
self._invalidate__cached_GET(pkgmetaurl)
if wipebinaries:
self.http_POST(self.makeurl(['build', self.project], {
'cmd': 'wipe',
'arch': self.arch,
'package': pkg }))
except HTTPError as e:
logger.error('failed to update %s: %s', pkg, e)
示例7: generate_settings_file
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def generate_settings_file(target_path):
source_path = xbmc.translatePath(
os.path.join(ADDON.getAddonInfo('path'), 'resources', 'settings.xml'))
root_target = ceT.Element("settings")
tree_source = eT.parse(source_path)
root_source = tree_source.getroot()
for item in root_source.findall('category'):
for setting in item.findall('setting'):
if 'id' in setting.attrib:
value = ''
if 'default' in setting.attrib:
value = setting.attrib['default']
ceT.SubElement(root_target, 'setting', id=setting.attrib['id'], value=value)
tree_target = ceT.ElementTree(root_target)
f = open(target_path, 'w')
tree_target.write(f)
f.close()
示例8: newXMLPASCALfile
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def newXMLPASCALfile(imageheight, imagewidth, path, basename):
# print(filename)
annotation = ET.Element("annotation", verified="yes")
ET.SubElement(annotation, "folder").text = "images"
ET.SubElement(annotation, "filename").text = basename
ET.SubElement(annotation, "path").text = path
source = ET.SubElement(annotation, "source")
ET.SubElement(source, "database").text = "test"
size = ET.SubElement(annotation, "size")
ET.SubElement(size, "width").text = str(imagewidth)
ET.SubElement(size, "height").text = str(imageheight)
ET.SubElement(size, "depth").text = "3"
ET.SubElement(annotation, "segmented").text = "0"
tree = ET.ElementTree(annotation)
# tree.write("filename.xml")
return tree
示例9: visit
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def visit(self, node):
xml_node = ElementTree.Element(node.display_name)
# attributes
for attr, attrValue in node.__dict__.items():
if not attr.startswith('_') and attrValue is not None:
xml_attr = ElementTree.SubElement(xml_node, attr)
child_node = self.visit(attrValue)
if type(child_node) is str:
xml_attr.text = child_node
elif type(child_node) is list:
xml_attr.extend(child_node)
else:
xml_attr.append(child_node)
return xml_node
示例10: saveMean
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def saveMean(fname, data):
root = et.Element('opencv_storage')
et.SubElement(root, 'Channel').text = '3'
et.SubElement(root, 'Row').text = str(imgSize)
et.SubElement(root, 'Col').text = str(imgSize)
meanImg = et.SubElement(root, 'MeanImg', type_id='opencv-matrix')
et.SubElement(meanImg, 'rows').text = '1'
et.SubElement(meanImg, 'cols').text = str(imgSize * imgSize * 3)
et.SubElement(meanImg, 'dt').text = 'f'
et.SubElement(meanImg, 'data').text = ' '.join(
['%e' % n for n in np.reshape(data, (imgSize * imgSize * 3))]
)
tree = et.ElementTree(root)
tree.write(fname)
x = xml.dom.minidom.parse(fname)
with open(fname, 'w') as f:
f.write(x.toprettyxml(indent=' '))
示例11: saveMean
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def saveMean(fname, data):
root = et.Element('opencv_storage')
et.SubElement(root, 'Channel').text = '3'
et.SubElement(root, 'Row').text = str(IMGSIZE)
et.SubElement(root, 'Col').text = str(IMGSIZE)
meanImg = et.SubElement(root, 'MeanImg', type_id='opencv-matrix')
et.SubElement(meanImg, 'rows').text = '1'
et.SubElement(meanImg, 'cols').text = str(IMGSIZE * IMGSIZE * 3)
et.SubElement(meanImg, 'dt').text = 'f'
et.SubElement(meanImg, 'data').text = ' '.join(['%e' % n for n in np.reshape(data, (IMGSIZE * IMGSIZE * 3))])
tree = et.ElementTree(root)
tree.write(fname)
x = xml.dom.minidom.parse(fname)
with open(fname, 'w') as f:
f.write(x.toprettyxml(indent = ' '))
示例12: writeStartElement
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def writeStartElement(self, elementName, attributeName=None, value=None, newLine=True):
target = None
if value:
target = ET.SubElement(self.getTarget(), elementName)
else:
target = ET.SubElement(self.getTarget(), elementName)
if attributeName:
target.set(attributeName, value)
self.objects.append(target)
return target
示例13: _generate_header
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def _generate_header(root, kwargs):
description = kwargs.get('description', None)
copyright = kwargs.get('copyright', None)
header = ET.SubElement(root, 'Header')
if copyright:
header.set('copyright', copyright)
if description:
header.set('description', description)
timestamp = ET.SubElement(header, 'Timestamp')
timestamp.text = str(datetime.now())
return header
示例14: _generate_neural_network
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def _generate_neural_network(root, estimator, transformer, feature_names, target_name, target_values, model_name=None):
neural_network = ET.SubElement(root, 'NeuralNetwork')
neural_network.set('functionName', 'classification')
neural_network.set('activationFunction', 'logistic') # default, will be overriden later
neural_network.set('normalizationMethod', 'none') # default, will be overriden later
if model_name:
neural_network.set('modelName', model_name)
_generate_mining_schema(neural_network, feature_names, target_name)
_generate_output(neural_network, target_values)
_generate_neural_inputs(neural_network, transformer, feature_names)
_generate_neural_layers(neural_network, estimator)
_generate_neural_outputs(neural_network, estimator, target_name, target_values)
return neural_network
示例15: _generate_mining_schema
# 需要导入模块: from xml.etree import cElementTree [as 别名]
# 或者: from xml.etree.cElementTree import SubElement [as 别名]
def _generate_mining_schema(neural_network, feature_names, target_name):
mining_schema = ET.SubElement(neural_network, 'MiningSchema')
mining_field = ET.SubElement(mining_schema, 'MiningField')
mining_field.set('name', target_name)
mining_field.set('usageType', 'target')
for f in feature_names:
mining_field = ET.SubElement(mining_schema, 'MiningField')
mining_field.set('name', f)
mining_field.set('usageType', 'active')
return mining_schema