def writeInfoToXml(filename, config_id, obj_name):

from xml.dom.minidom import Document

'''

eg:

Web Servers

Denial of Service

General

'''

# 创建dom文档

doc = Document()

# 创建根节点

modify_node = doc.createElement('modify_config')

# 修改或添加节点中元素内容

modify_node.setAttribute("config_id", config_id)

# 根节点插入dom树

doc.appendChild(modify_node)

# 每一组信息先创建节点,然后插入到父节点下

nvtSlect = doc.createElement('nvt_selection')

modify_node.appendChild(nvtSlect)

# 从数据库查询需要扫描的项

vulnerData = nova_get_vulnerdata_from_db(obj_name)

# 依次将vulnerData中的每一组元素提取出来,创建对应节点并插入dom树

for idx, sub_data in enumerate(vulnerData):

for name, oid_list in sub_data.items():

# 创建节点

family = doc.createElement('family')

# 创建下的文本节点

family_text = doc.createTextNode(name)

# 将文本节点插入到下

family.appendChild(family_text)

# 将插入到父节点下

nvtSlect.appendChild(family)

for oid in oid_list:

# 创建nvt节点

nvt_node = doc.createElement('nvt')

# 修改或添加节点中元素内容

nvt_node.setAttribute("oid", oid)

# 将nvt节点插入到父节点nvtSlect

nvtSlect.appendChild(nvt_node)

cmd = "rm -rf {}".format(filename)

subprocess.check_output(cmd, shell=True)

# 将dom对象写入本地xml文件

with open(filename, 'w') as f:

doc.writexml(f, indent='',addindent='\t',newl='\n',encoding='UTF-8')

python写xml文件_用python写xml文件相关推荐

  1. java dom xml 换行,dom4j解析xml文件_用DOM解析XML文件,怎么才能让解析出来的文本不用换行_dom解析xml文件...

    网友求助:dom4j解析xml文件_用DOM解析XML文件,怎么才能让解析出来的文本不用换行_dom解析xml文件 问题importjava.text.SimpleDateFormat; import ...

  2. 用python写shell脚本_应用python编写shell脚本

    今天同事叫我编写一个shell脚本.话说,虽然我受*nix的影响甚深,但是对于*nix里随处可见的sh脚本却是讨厌之极.为什么讨厌呢?首先是因为sh脚本那莫名其妙的语法,感觉就像随写随扔的程序,完全没 ...

  3. 用python写名字代码_用python编写一个批量修改文件名的小程序

    1.问题描述: 原有的视频文件按序排列,但是文件名没有对内容的说明,如下图所示: 原视频文件列表.jpg 想将其批量修改成如下文件名: 图2:要改成的文件名.jpg 最终想要的效果: ok.jpg 不 ...

  4. python优雅代码大全_代码这样写更优雅(Python版)

    Python 这门语言最大的优点之一就是语法简洁,好的代码就像伪代码一样,干净.整洁.一目了然.但有时候我们写代码,特别是 Python 初学者,往往还是按照其它语言的思维习惯来写,那样的写法不仅运行 ...

  5. python写机器人程序_用Python写的一个多线程机器人聊天程序

    本人是从事php开发的, 近来想通过php实现即时通讯(兼容windows).后来发现实现起来特别麻烦, 就想到python.听说这家伙在什么地方都能发挥作用.所以想用python来做通讯模块...所 ...

  6. python伪代码书写规范_代码这样写更优雅(Python 版)(转载)

    Python 这门语言最大的优点之一就是语法简洁,好的代码就像伪代码一样,干净.整洁.一目了然.但有时候我们写代码,特别是 Python 初学者,往往还是按照其它语言的思维习惯来写,那样的写法不仅运行 ...

  7. python手写代码面试_常见Python面试题—手写代码系列

    原标题:常见Python面试题-手写代码系列 1.如何反向迭代一个序列 #如果是一个list,最快的方法使用reverse tempList = [1,2,3,4] tempList.reverse( ...

  8. python写一个类方法_重写python脚本,在脚本的每个类中注入一个方法 - python

    假设我有一个python模块foo.py,其中包含: class Foo(object): def __init__(self): pass 接下来,我想解析此脚本,并在每个类中注入一个方法,然后将其 ...

  9. python手写代码面试_常见Python面试题 — 手写代码系列

    原标题:常见Python面试题 - 手写代码系列 作者: Peace & Love 来自:https://blog.csdn.net/u013205877/article/details/77 ...

  10. python 爬虫框架对比_用Python写爬虫,用什么方式、框架比较好?

    以前只写过很简单的Python爬虫,直接用内置库实现,有没有谁用Python爬过规模较大的数据,用的是什么方法? 还有,采用现有的Python爬虫框架,相比与直接使用内置库,优势在哪?因为Python ...

最新文章

  1. android 短信验证码的实现
  2. 技术图文:C# 语言中的扩展方法
  3. word文档无法连接服务器,sql数据库无法连接服务器解决办法绝对有效
  4. C++拷贝构造函数(深拷贝,浅拷贝)
  5. 阿里1682亿背后的协同研发云——云效正式商业化
  6. java弹窗点击事件_[Java教程]jQuery的click事件在当前页弹出层窗口(不打开新页面)...
  7. 【月报】Java知音的五月汇总
  8. Linux内存管理:内存描述之内存页面page
  9. c语言 字体点阵取模,[汉字取模软件怎么用]单片机点阵汉字显示需要用
  10. 圆柱与平面接触宽度_圆柱滚子轴承保持架锁爪变形引起的轴承故障
  11. KinectFusion: Real-Time Dense Surface Mapping and Tracking
  12. div+css总结—FF下div不设置…
  13. C#与.NET程序员面试宝典 1.2.4 简历中的闪光点----突出可转移技能(可能是你忽略的优势)...
  14. tablepc是什么平板电脑_什么是TABLET PC,TABLET PC有什么功能呢?
  15. 社团联合会计算机教程,计算机与信息工程学院学生社团联合会
  16. 回溯法采用的搜索策略_下面哪种函数是回溯法中为避免无效搜索采取的策略( )...
  17. RSF 分布式 RPC 服务框架的分层设计
  18. 【Hexo】如何才能在百度搜索到你的博客?SEO优化了解一下(上)
  19. 360、搜狗搜索内容200重定向真实链接获取
  20. 特征匹配中的欧氏距离

热门文章

  1. python中xml模块_python学习第十五天-2(XML模块)
  2. bat 发送post请求_get post 请求
  3. 《c语言深度剖析》读书笔记
  4. leetcode——15.3Sum
  5. NFS方式挂载rootfs的设置方法
  6. 编码 括号_Java编码规范整理汇总
  7. jQuery load() 中文乱码
  8. C语言博客作业--函数
  9. 八大排序算法的python实现(三)冒泡排序
  10. Java程序员应该了解的10个设计原则