You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python新手求助:如何将无规范属性的XML文件导入Excel?

问题:将特定XML格式转为可正常打开的Excel文件

我是Python新手,尽管花了数小时乃至数天学习,仍在享受学习过程。目前我尝试用Python把XML文件直接导入Excel,但转CSV和XLSX都没成功。我的XML文件格式混乱,所有记录没有命名规范的属性,很难提取所需信息,结构如下:

<Worksheet ss:Name="Sheet1">
<Table>
<Column ss:AutoFitWidth="0" ss:Width="50"/>
<Column ss:AutoFitWidth="0" ss:Width="84" ss:Span="1"/>
<Column ss:AutoFitWidth="0" ss:Width="110"/>
<Column ss:AutoFitWidth="0" ss:Width="110"/>
<Column ss:AutoFitWidth="0" ss:Width="90"/>
<Column ss:AutoFitWidth="0" ss:Width="90"/>
<Column ss:AutoFitWidth="0" ss:Width="87"/>
<Column ss:AutoFitWidth="0" ss:Width="57.75"/>
<Column ss:AutoFitWidth="0" ss:Width="57.75"/>
<Column ss:AutoFitWidth="0" ss:Width="100"/>
<Column ss:AutoFitWidth="0" ss:Width="100"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Column ss:AutoFitWidth="0" ss:Width="80"/>
<Row>
<Cell><Data ss:Type="Number">6427</Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[7EQ-E2V-9VG6]]></Data></Cell>
<Cell ss:StyleID="s62"><Data ss:Type="DateTime">2023-01-01T19:01:06.000</Data></Cell>
<Cell ss:StyleID="s62"><Data ss:Type="DateTime">2023-01-11T13:26:44.000</Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Mack Snow]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[email@check.net]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Price Check]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Low]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Resolved]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Ticket from Karen Kaldwell]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[John Doe]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[01:00:00]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[2023-00123]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[337-411-0000]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[The Round Office]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[REPORT NARRATIVE DATA. Please return my call ASAP]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Jane]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[Doe]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[10/20/94]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[1234 Testing Dr]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
<Cell><Data ss:Type="String"><![CDATA[]]></Data></Cell>
</Row>

文件里还有数百条类似的<Row>记录。我还试过用下面的代码修改文件扩展名:

import os

A = r"C:\Users\ddejean\Desktop\TEST\finalxml.xml"
pre, ext = os.path.splitext(A)
os.rename(A, pre + ".xlsx")

改完后文件看起来正常,但因为格式和扩展名不匹配,打开时提示损坏。求可行的解决方案。


内容的提问来源于stack exchange,提问作者Demi Dee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 06:05:24