Python实现XML文件转Excel

了解xml.etree.ElementTree

https://zhuanlan.zhihu.com/p/502584681?utm_id=0

实现代码

运行前请确保对应的库装好

python 复制代码
# encoding: utf-8
import os
import xml.etree.ElementTree as ET
import pandas as pd
from tqdm import tqdm


folder_path = "C:/Users/Administrator/Desktop/新建文件夹"  # 替换为你的文件夹路径
 
# 获取文件夹中的所有文件
file_list = os.listdir(folder_path)
 
# 创建一个空的DataFrame来存储所有XML文件的数据
all_data = pd.DataFrame()
 
# 使用tqdm显示进度条
for file_name in tqdm(file_list, desc="Processing files"):
    if file_name.endswith(".xml"):
        file_path = os.path.join(folder_path, file_name)
         
        # 解析XML文件
        tree = ET.parse(file_path)
        root = tree.getroot()

        # 提取XML数据并转换为DataFram
        xml_data = {}
        for element in root.iter():
            # xml_data[element.tag] = element.attrib
            xml_data.update(element.attrib)

        # print('end')
        # print(xml_data)

        df = pd.DataFrame(xml_data, index=[0])

        # 将DataFrame添加到总的数据集中
        all_data = pd.concat([all_data, df], ignore_index=True)

# 将数据保存为Excel文件
excel_file_path = "C:/Users/Administrator/Desktop/新建文件夹/2011.xlsx"  # 替换为你的输出文件路径,如:/path/to/output/file.xlsx
all_data.to_excel(excel_file_path, index=False)
print('end')
print(all_data)

print("转换完成!Excel文件已保存。")
相关推荐
金銀銅鐵3 小时前
n^5 和 n 的个位数是否总相等?
python·数学
aqi006 小时前
15天学会AI应用开发(九)利用Chroma持久化向量数据
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵6 小时前
借助 Pygame 探索最大公约数的规律
python·数学·游戏
ServBay1 天前
9 个 Python 第三方库推荐,不用 AI 都好像多出一个团队
后端·python
用户8356290780511 天前
如何使用 Python 添加和管理 Excel 批注(完整示例)
后端·python
用户8356290780511 天前
使用 Python 管理 Excel 工作表:创建、复制、删除与重命名
后端·python
荣码1 天前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python
用户8356290780512 天前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟2 天前
乐企版式文件生成平台
java·后端·python