python 生成odoo xml文件(1)

在odoo系统中,xml文件比较多,也可以在data/xml里面直接加载文件,当数据量大的时候,可以用python来生成。

此示例是用python方法生成xml数据文件

# -*- coding: utf-8 -*-
import xlrd
from xml.etree.ElementTree import Element, SubElement, ElementTree

def read_excel():
    # 打开文件
    workbook = xlrd.open_workbook(r'E:\odoo12\odoo12\res_partner.xls')
    sheet2 = workbook.sheet_by_name('Sheet 1')
    # odoo标签
    root = Element('odoo')
    # data标签
    data = SubElement(root, 'data')

    for row in range(1, sheet2.nrows):
        # 开始生成数据
        row_value = sheet2.row_values(row)[1:]

        # 生成第一个子节点 record
        record = SubElement(data, 'record ', attrib={"model": "account.account", 'id': "write"})
        # record 节点的子节点 field
        SubElement(record, 'field', attrib={'eval': f"{row_value[0]}", "name": "名称"})
        SubElement(record, 'field', attrib={'eval': f"{row_value[1]}", "name": "电话"})
        SubElement(record, 'field', attrib={'eval': f"{row_value[2]}", "name": "邮箱"})

    tree = ElementTree(root)
    tree.write(r'xustomer.xml', encoding='utf-8', xml_declaration=True)

if __name__ == '__main__':
    read_excel()

运行此方法,可以生成以下 xustomer.xml 文件

在这里插入图片描述

进阶版本>>>

你可能感兴趣的:(python 生成odoo xml文件(1))