Python Xml文件添加字节属性的方法
实例如下所示:
fromxml.etree.cElementTreeimportElementTree,Element importxlrd importre defread_xlsx(xlsx_path): workbook=xlrd.open_workbook(xlsx_path) booksheet=workbook.sheet_by_name("Sheet1") p=list() row_data=[] forrowinrange(booksheet.nrows): forcolinrange(booksheet.ncols): cel=booksheet.cell(row,col) val=cel.value try: val=cel.value val=re.sub(r'\s+','',val) except: pass iftype(val)==float: val=int(val) else: val=str(val) row_data.append(val) p.append(row_data) returnp defread_xml(Int_path): tree=ElementTree() tree.parse(Int_path) returntree defwrite_xml(tree,out_path): tree.write(out_path,encoding="utf-8",xml_declaration=True) '''tree.write('output.xml')''' defif_match(node,k_name,k_val): c=node.get(k_name) ifnode.get(k_name)==k_val: returnTrue returnFalse deffind_nodes(tree,path): returntree.findall(path) defget_node_by_keyvalue(nodelist,key_name,key_val): result_nodes=[] fornodeinnodelist: ifif_match(node,key_name,key_val): result_nodes.append(node) returnresult_nodes defadd_node_properties(nodelist,add_key,add_properties): fornodeinnodelist: node.set(add_key,add_properties) returnnode if__name__=="__main__": tree=read_xml("./ContentList.xml") nodes=find_nodes(tree,"Content") P=read_xlsx("./ServiceId.xlsx") a=P[0] i=0 whilei<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')
以上这篇PythonXml文件添加字节属性的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。