Python Xml文件添加字节属性的方法


Posted in Python onMarch 31, 2018

实例如下所示:

from xml.etree.cElementTree import ElementTree,Element
import xlrd
import re
def read_xlsx(xlsx_path):
  workbook = xlrd.open_workbook(xlsx_path)
  booksheet = workbook.sheet_by_name("Sheet1")
  p = list()
  row_data = []
  for row in range(booksheet.nrows):
    for col in range(booksheet.ncols):
      cel = booksheet.cell(row, col)
      val = cel.value
      try:
        val = cel.value
        val = re.sub(r'\s+', '', val)
      except:
        pass
      if type(val) == float:
        val = int(val)
      else:
        val = str(val)
      row_data.append(val)
  p.append(row_data)
  return p
def read_xml(Int_path):
  tree = ElementTree()
  tree.parse(Int_path)
  return tree
def write_xml(tree, out_path):
  tree.write(out_path,encoding="utf-8",xml_declaration=True)
  '''tree.write('output.xml')'''
def if_match(node,k_name,k_val):
  c = node.get(k_name)
  if node.get(k_name) == k_val:
    return True
  return False
def find_nodes(tree,path):
  return tree.findall(path)
def get_node_by_keyvalue(nodelist,key_name,key_val):
  result_nodes=[]
  for node in nodelist:
    if if_match(node,key_name,key_val):
      result_nodes.append(node)
  return result_nodes
def add_node_properties(nodelist,add_key,add_properties):
  for node in nodelist:
    node.set(add_key,add_properties)
  return node
if __name__ == "__main__":
  tree = read_xml("./ContentList.xml")
  nodes = find_nodes(tree,"Content")
  P = read_xlsx("./ServiceId.xlsx")
  a = P[0]
  i = 0
  while i < 80:
    result_nodes = get_node_by_keyvalue(nodes , "AssetId" , a[i])
    add_node_properties(result_nodes,"ServiceId",a[i+1])
    i = i + 2
  write_xml(tree,'./ContentList1.xml')

以上这篇Python Xml文件添加字节属性的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python 3中实现类型检查器的简单方法
Jul 03 Python
Python基于动态规划算法计算单词距离
Jul 25 Python
python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)
Mar 12 Python
Python读取mat文件,并保存为pickle格式的方法
Oct 23 Python
pygame游戏之旅 按钮上添加文字的方法
Nov 21 Python
matplotlib实现区域颜色填充
Mar 18 Python
python 直接赋值和copy的区别详解
Aug 07 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
Aug 18 Python
Python解析多帧dicom数据详解
Jan 13 Python
Django choices下拉列表绑定实例
Mar 13 Python
教你如何用python操作摄像头以及对视频流的处理
Oct 12 Python
Python使用DFA算法过滤内容敏感词
Apr 22 Python
Python简单生成随机数的方法示例
Mar 31 #Python
用python 批量更改图像尺寸到统一大小的方法
Mar 31 #Python
使用Python读取安卓手机的屏幕分辨率方法
Mar 31 #Python
python获取网页中所有图片并筛选指定分辨率的方法
Mar 31 #Python
python如何将图片转换为字符图片
Aug 19 #Python
Pyinstaller将py打包成exe的实例
Mar 31 #Python
Python pymongo模块用法示例
Mar 31 #Python
You might like
JAVA/JSP学习系列之二
2006/10/09 PHP
用PHP控制用户的浏览器--ob*函数的使用说明
2007/03/16 PHP
PHP 彩色文字实现代码
2009/06/29 PHP
PHP之COOKIE支持详解
2010/09/20 PHP
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
php读取文件内容至字符串中,同时去除换行、空行、行首行尾空格(Zjmainstay原创)
2012/07/31 PHP
Zend的Registry机制的使用说明
2013/05/02 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
js玩一玩WSH吧
2007/02/23 Javascript
JavaScript多线程的实现方法
2007/05/08 Javascript
jquery HotKeys轻松搞定键盘事件代码
2008/08/30 Javascript
JQuery实现超链接鼠标提示效果的方法
2015/06/10 Javascript
jQuery学习笔记之Ajax用法实例详解
2015/12/01 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
概述VUE2.0不可忽视的很多变化
2016/09/25 Javascript
小程序扫描普通链接二维码跳转小程序指定界面方法
2019/05/07 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
python 格式化输出百分号的方法
2019/01/20 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
Python中调用其他程序的方式详解
2019/08/06 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
2019/09/18 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
python中元组的用法整理
2020/06/15 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
2020/09/02 Python
使用phonegap获取设备的一些信息方法
2017/03/31 HTML / CSS
蔻驰西班牙官网:COACH西班牙
2019/01/16 全球购物
现代化办公人员工作的自我评价
2013/10/16 职场文书
四年的大学生生活自我评价
2013/12/09 职场文书
土地转让协议书
2014/04/15 职场文书
应届生求职信范文
2014/06/30 职场文书
主婚人致辞精选
2015/07/28 职场文书
Windows 11要来了?微软文档揭示Win11太阳谷 / Win10有两个不同版本
2021/11/21 数码科技