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实现一个简单的能够上传下载的HTTP服务器
May 05 Python
Python使用functools实现注解同步方法
Feb 06 Python
在Pycharm中对代码进行注释和缩进的方法详解
Jan 20 Python
python语言元素知识点详解
May 15 Python
Python3内置模块之base64编解码方法详解
Jul 13 Python
Python绘制股票移动均线的实例
Aug 24 Python
python selenium循环登陆网站的实现
Nov 04 Python
Tensorflow实现多GPU并行方式
Feb 03 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
Dec 14 Python
Python多个MP4合成视频的实现方法
Jul 16 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
终于听上了直流胆调频
2021/03/02 无线电
php获取地址栏信息的代码
2008/10/08 PHP
如何使用php绘制在图片上的正余弦曲线
2013/06/08 PHP
中文路径导致unitpngfix.js不正常的解决方法
2013/06/26 Javascript
javascript顺序加载图片的方法
2015/07/18 Javascript
js精美的幻灯片画集特效代码分享
2015/08/29 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
jQuery回到顶部的代码
2016/07/09 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
vue-prop父组件向子组件进行传值的方法
2018/03/01 Javascript
nodejs微信开发之接入指南
2019/03/17 NodeJs
一个小时快速搭建微信小程序的方法步骤
2019/04/15 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
2019/04/22 Javascript
vue项目中使用fetch的实现方法
2019/04/25 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)
2019/09/01 Javascript
在Django框架中编写Context处理器的方法
2015/07/20 Python
Python线性回归实战分析
2018/02/01 Python
python提取xml里面的链接源码详解
2019/10/15 Python
Python常用编译器原理及特点解析
2020/03/23 Python
python如何变换环境
2020/07/21 Python
CSS的background属性及CSS3的背景图片设置总结
2016/06/13 HTML / CSS
GNC健安喜官方海外旗舰店:美国著名保健品牌
2017/01/04 全球购物
伦敦哈德森鞋:Hudson Shoes
2018/02/06 全球购物
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
巴西最大的巴士票务门户:Quero Passagem
2020/11/21 全球购物
面试必备的求职信
2014/05/25 职场文书
酒店工程部主管岗位职责
2015/04/16 职场文书
活动总结书怎么写
2015/05/11 职场文书
大学生求职意向书
2015/05/11 职场文书
python实现简单的井字棋
2021/05/26 Python
Python pandas之求和运算和非空值个数统计
2021/08/07 Python
centos8安装MongoDB的详细过程
2021/10/24 MongoDB