本文整理汇总了Python中xml.etree.cElementTree.SubElement类的典型用法代码示例。如果您正苦于以下问题:Python SubElement类的具体用法?Python SubElement怎么用?Python SubElement使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了SubElement类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: to_juniper
def to_juniper(self, device=None, commands=None, extra=None):
"""
Configure a Juniper device using JunoScript.
:returns:
list
"""
if self.verbose:
print "generating JunOS commands"
files = self.files
cmds = [Element('lock-configuration')]
for fname in files:
# fname is required to contain the full path
lc = Element('load-configuration', action='replace', format='text')
body = SubElement(lc, 'configuration-text')
if self.debug:
print "fname: " + fname
body.text = file(fname).read()
cmds.append(lc)
#commands = self.commands
if len(commands) > 0:
lc = Element('load-configuration', action='replace', format='text')
body = SubElement(lc, 'configuration-text')
body.text = '\n'.join(commands)
cmds.append(lc)
cmds.append(Element('commit-configuration'))
if self.debug:
for xml in cmds:
ET.dump(xml)
return cmds
示例2: to_juniper
def to_juniper(self, dev, commands=None, extra=None):
if commands is None:
commands = []
cmds = [Element('lock-configuration')]
files = self.files
action = self.action
if action == 'overwrite':
action = 'override'
for fname in files:
#log.msg("fname: %s" % fname)
filecontents = ''
if not os.path.isfile(fname):
fname = tftp_dir + fname
try:
filecontents = file(fname).read()
except IOError as e:
log.msg("Unable to open file: %s" % fname)
if filecontents == '':
continue
lc = Element('load-configuration', action=action, format='text')
body = SubElement(lc, 'configuration-text')
body.text = filecontents
cmds.append(lc)
if len(commands) > 0:
lc = Element('load-configuration', action=action, format='text')
body = SubElement(lc, 'configuration-text')
body.text = "\n".join(commands)
cmds.append(lc)
cmds.append(Element('commit-configuration'))
return cmds
示例3: __init__
def __init__(self):
self.data = Element("data")
entityRendererElement = SubElement(self.data, "mtg:EntityRenderer")
entityRendererElement.attrib['xmlns:mtg'] = 'http://maltego.paterva.com/xml/mtgx'
self.position = SubElement(entityRendererElement, "mtg:Position")
示例4: write
def write(self, node, data):
dt = SubElement(node, 'dt')
dt.text = str(data.dt)
sysex_event = SubElement(node, 'SysExEvent')
event = SysExEventFactory.get(data.event.value)
event.write(sysex_event, data.event)
示例5: add_entity_property
def add_entity_property(self, parent, prop, value):
propertyElement = SubElement(parent, "mtg:Property")
propertyElement.attrib = {
'name': prop.get('name'),
'type': prop.get('dataType', 'string')
}
SubElement(propertyElement, "mtg:Value").text = value
示例6: __build
def __build(self, node, builder):
for child in node.children:
if child.namespace != child.rootNamespace:
if child.nsMapper.get(child.namespace):
child.tag = child.nsMapper[child.namespace] + ":" + child.tag
_sub = SubElement(builder, child.tag, child.attrib)
if child.hasText:
_sub.text = child.text
self.__build(child, _sub)
示例7: _update_xml_item
def _update_xml_item(self, xml_item, item):
if item.image:
image_el = SubElement(xml_item, 'image')
image_el.text = item.image
addons_el = SubElement(xml_item, 'addons')
for addon_id in item:
addon_id_el = SubElement(addons_el, 'addon_id')
addon_id_el.text = addon_id
return xml_item
示例8: _create_actions
def _create_actions(self, actions):
for action_name, action in actions.iteritems():
action_element = SubElement(self.action_list_element, "action")
element = SubElement(action_element, "name")
element.text = action.name
# <argumentList>
argument_list_element = SubElement(action_element, "argumentList")
if action.arguments:
self._create_arguments(argument_list_element, action.arguments)
示例9: rebuildElement
def rebuildElement (self, parentElement, node):
newElement = SubElement(parentElement, node['name'])
newElement.text = node['text'].strip()
if node['name'] in {'gml:pos', 'gml:posList'}:
# convert the lat/lon -> lon/lat.
contentlist = newElement.text.split("\n")
newElement.text = ' '.join( [ x[1] + "," + x[0] for x in [x.split() for x in contentlist if x != ""]] )
for n in node['node']:
self.rebuildElement(newElement, n)
示例10: xmlnode
def xmlnode(root, name, text="", **attrs):
"Simple way to attach an ElementTree node."
elem = SubElement(root, name) if root is not None else Element(name)
if text:
elem.text = text
for k, v in attrs.iteritems():
elem.set(k, v)
return elem
示例11: _dict_xml_node
def _dict_xml_node(data, parent):
"""Traverse the dict data under the root key"""
if isinstance(data, dict):
for elem, value in six.iteritems(data):
sub = SubElement(parent, elem)
sub.text = _dict_xml_node(value, sub)
elif isinstance(data, list):
for entry in data:
_dict_xml_node(entry, parent)
else:
return data
示例12: save_project
def save_project(project):
root = Element("project")
root.set("name", project.get_name())
files_node = SubElement(root, "files")
for filename in project.get_files():
f_node = SubElement(files_node, "file")
f_node.set("path", filename)
with open(project.get_file(), "w") as f:
f.write(utils.get_pretty_xml(root))
f.flush()
示例13: save_edge
def save_edge(edge, parent_node_el):
edge_el = SubElement(parent_node_el, "arc")
edge_el.set("node-id", edge.get_target().get_id())
edge_el.set("label", edge.get_label())
edge_el.set("events-count", str(edge.get_events_count()))
edge_el.set("time", str(edge.get_time()))
edge_el.set("pids", str(edge.get_pids()))
return edge_el
示例14: _create_embedded_devices
def _create_embedded_devices(self):
if self.device.is_root_device():
embedded_devices = self.device.devices
if len(embedded_devices) > 0:
device_list_element = SubElement(self.device_element,
"deviceList")
for embedded_device in embedded_devices.values():
embedded_device_description = DeviceXMLGenerator(
embedded_device)
device_list_element.append(embedded_device_description.
generate())
示例15: to_xml
def to_xml(self, filename, id2name):
results_tag = Element("Results")
dataset_tag = SubElement(results_tag, "Dataset")
dataset_tag.text = "Test"
stories_tag = SubElement(results_tag, "Stories")
for story in self:
story_elem = SubElement(stories_tag, "Story", {"StoryId": str(story["story_id"])})
tags = SubElement(story_elem, "Tags")
for tag in story["tags"]:
SubElement(tags, "Tag", {"OrgID": str(tag), "Company": id2name[tag], "Relevance": "H"})
ET.ElementTree(results_tag).write(filename)