Guest Visitante Postado Abril 17, 2007 Denunciar Share Postado Abril 17, 2007 Olá, boa-tarde à todos.Tenho um simples arquivo de cadastro, e gostaria de saber como gravo essas informações em um arquivo XML.Meu XML está mais ou menos assim:<?xml version="1.0"?> <carros> <carro1> <marca>Fiat</marca> <modelo>Uno</modelo> <ano>1998</ano> </carro1> <carro2> <marca>Ford</marca> <modelo>K.A.</modelo> <ano>1996</ano> </carro2> </carros>Já encontrei no CookBook do pythonbrasil o método para ler xml e não escrever.Qualquer ajuda é bem-vinda. Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 17, 2007 Denunciar Share Postado Abril 17, 2007 Na própria documentação de Python você encontra um exemplo de escrever. De qualquer maneira, segue um exemplo para o seu caso específico:import xml.dom.minidom veiculos = {'carro1' : ['Fiat', 'Uno', '1998'], 'carro2' : ['Ford', 'Ka', '1996'], 'carro3' : ['Chevrolet', 'Vectra', '1998']} dom = xml.dom.minidom.getDOMImplementation() xml = dom.createDocument(None, "carros", None) carros = xml.documentElement for veiculo, dados in veiculos.items(): carro = xml.createElement(veiculo) marca = xml.createElement("marca") marca.appendChild(xml.createTextNode(dados[0])) modelo = xml.createElement("modelo") modelo.appendChild(xml.createTextNode(dados[1])) ano = xml.createElement("ano") ano.appendChild(xml.createTextNode(dados[2])) carro.appendChild(marca) carro.appendChild(modelo) carro.appendChild(ano) carros.appendChild(carro) f = file('c:/teste.xml', 'w') f.write(xml.toprettyxml()) f.close() print xml.toprettyxml()Certo? ;)Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Visitante Postado Abril 18, 2007 Denunciar Share Postado Abril 18, 2007 Valeu!está dando esse errinho aqui:Traceback (most recent call last): File "xml.py", line 1, in ? import xml.dom.minidom File "/escrever_xml/xml.py", line 1, in ? import xml.dom.minidomImportError: No module named dom.minidomPode ajudar?Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 18, 2007 Denunciar Share Postado Abril 18, 2007 O problema é que você gravou o arquivo com o nome "xml.py" e é justamente o módulo de mesmo nome (que existe na biblioteca de Python) é que estamos tentando importar (import xml.dom.minidom). Renomeie o seu xml.py para qualquer outra coisa (teste.py, por exemplo) e vai dar certo.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Visitante Postado Abril 19, 2007 Denunciar Share Postado Abril 19, 2007 Humm dessa eu não sabia! :P Obrigado "Graymalkin"! Valeu mesmo.Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Visitante
Olá, boa-tarde à todos.
Tenho um simples arquivo de cadastro, e gostaria de saber como gravo essas informações em um arquivo XML.
Meu XML está mais ou menos assim:
Já encontrei no CookBook do pythonbrasil o método para ler xml e não escrever.
Qualquer ajuda é bem-vinda. Obrigado.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.