XML pickle
castironpi at gmail.com
castironpi at gmail.com
Thu Feb 14 20:53:36 EST 2008
> I cannot tell if the above approach will solve your problem or not.
Well, declare me a persistent object.
from lxml import etree
SS= '{urn:schemas-microsoft-com:office:spreadsheet}'
book= etree.Element( 'Workbook' )
book.set( 'xmlns', 'urn:schemas-microsoft-com:office:spreadsheet' )
sheet= etree.SubElement(book, "Worksheet")
sheet.set( SS+ 'Name', 'WSheet1' )
table= etree.SubElement(sheet, "Table")
row= etree.SubElement(table, "Row")
cell1= etree.SubElement(row, "Cell")
data1= etree.SubElement(cell1, "Data" )
data1.set( SS+ 'Type', "Number" )
data1.text= '123'
cell2= etree.SubElement(row, "Cell")
data2= etree.SubElement(cell2, "Data" )
data2.set( SS+ 'Type', "String" )
data2.text= 'abc'
out= etree.tostring( book, pretty_print= True, xml_declaration=True )
print( out )
open( 'xl.xml', 'w' ).write( out )
Can you use set( '{ss}Type' ) somehow? And any way to make this look
closer to the original? But it works.
<?xml version='1.0' encoding='ASCII'?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet">
<Worksheet xmlns:ns0="urn:schemas-microsoft-com:office:spreadsheet"
ns0:Name="WSheet1">
<Table>
<Row>
<Cell>
<Data ns0:Type="Number">123</Data>
</Cell>
<Cell>
<Data ns0:Type="String">abc</Data>
</Cell>
</Row>
</Table>
</Worksheet>
</Workbook>
More information about the Python-list
mailing list