2017-10-04 124 views
-1

我有一個由excel軟件生成的xml文件。該文件是這樣完成的:導入Excel中生成的xml文件

<?xml version="1.0"?> 
<?mso-application progid="Excel.Sheet"?> 
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:x="urn:schemas-microsoft-com:office:excel" 
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" 
xmlns:html="http://www.w3.org/TR/REC-html40"> 
... 
<Worksheet ss:Name="Table1"> 
    <Table ss:ExpandedColumnCount="9" ss:ExpandedRowCount="162" x:FullColumns="1" 
    x:FullRows="1" ss:DefaultRowHeight="15"> 
    <Column ss:AutoFitWidth="0" ss:Width="110.25" ss:Span="8"/> 
    <Row ss:AutoFitHeight="0"> 
    <Cell><Data ss:Type="String">Sezione</Data></Cell> 
    <Cell><Data ss:Type="String">Bambino</Data></Cell> 
    <Cell><Data ss:Type="String">Sesso</Data></Cell> 
    <Cell><Data ss:Type="String">Luogo di nascita</Data></Cell> 
    <Cell><Data ss:Type="String">Data di nascita</Data></Cell> 
    <Cell><Data ss:Type="String">Indirizzo</Data></Cell> 
    <Cell><Data ss:Type="String">CAP</Data></Cell> 
    <Cell><Data ss:Type="String">Città</Data></Cell> 
    <Cell><Data ss:Type="String">Accompagnatori</Data></Cell> 
    </Row> 
    <Row ss:AutoFitHeight="0"> 
    <Cell><Data ss:Type="String">ARANCIONE</Data></Cell> 
    <Cell><Data ss:Type="String">pippo </Data></Cell> 
    <Cell><Data ss:Type="String">Maschile</Data></Cell> 
    <Cell><Data ss:Type="String">Mirano (VE)</Data></Cell> 
    <Cell><Data ss:Type="String">2000-02-08</Data></Cell> 
    <Cell><Data ss:Type="String">Via xx, 10</Data></Cell> 
    <Cell><Data ss:Type="String">00000</Data></Cell> 
    <Cell><Data ss:Type="String">xxx</Data></Cell> 
    <Cell><Data ss:Type="String">xxx mmm</Data></Cell> 
    </Row> 
    </Table> 
... 
</Worksheet> 
</Workbook> 

我需要讀取python xml文件來處理單元格內容。 我使用minidom,但我無法正確導入按行分解的單元格內容。

我寫了這個代碼,但我不能提取字符串:

from xml.dom import minidom 
xmldoc = minidom.parse("xxx.xml") 
itemlist=xmldoc.getElementsByTagName('Row') 

for s in itemlist : 
    item=s.getElementsByTagName('Cell') 
    print item 

有誰知道怎麼幫我?謝謝

回答

0

我解決了它這樣的:

from xml.dom import minidom 
xmldoc = minidom.parse("D:\xxx.xml") 

itemlist=xmldoc.getElementsByTagName('Row') 
bambino=0 
for rows in itemlist : 
    item=rows.getElementsByTagName('Cell') 
    for Celle in item: 
     for child in Celle.childNodes: 
      print child.childNodes[0].nodeValue 

我希望這可以是有用的人。