Ler XML dentro de um TXT

69 views
Skip to first unread message

Ricardo Mendonça

unread,
May 26, 2021, 10:32:32 AM5/26/21
to Python Brasil
Olá, Boa Noite, sou iniciante no mundo da programação e gostei muito da linguagem Python e estou estudando constantemente, acontece que me deparei com uma situação que estou precisando de uma ajuda. Eu tenho um arquivo .txt que dentro dele tem várias linhas, cada linha é um XML. Como faço pra ler essas linhas? quero colocar cada tag do xml numa variável e inserir no banco. Alguém poderia me ajudar? Agradecido desde já!!!

Joao S. O. Bueno

unread,
May 26, 2021, 11:10:03 AM5/26/21
to python...@googlegroups.com
Seguinte: 

Quando você abre um arquivo pra leitura do Python, ele, por padrão abre como um arquivo de texto, 
e uma das formas mais naturais de interagir com o arquivo é justamente ler linha por linha.

O próprio comando `for` já faz isso: lê uma linha de cada vez, quando é usado com um arquivo como interador.


Aí, você tendo a linha como uma string usa alguma lib de XML do Python , e dentro dessa lib, uma chamada para
ler o XML a partir de uma string, e não de um arquivo. Na biblioteca do Python tem a chamada `xml.etree.ElementTree.fromstring`.

O código no caso fica simplesmente:
```
from xml.etree import ElementTree as ET

xml_doms = []
with open("meuarquivo.txt") as file:
    for line in file:
         xml_doms.append(ET.fromstring(line))
``` 
 a partir daqui veja a documentação do ElementTree para
 ver como manipular o DOM dos seus XML lidos:



On Wed, 26 May 2021 at 11:32, Ricardo Mendonça <cadinho...@gmail.com> wrote:
Olá, Boa Noite, sou iniciante no mundo da programação e gostei muito da linguagem Python e estou estudando constantemente, acontece que me deparei com uma situação que estou precisando de uma ajuda. Eu tenho um arquivo .txt que dentro dele tem várias linhas, cada linha é um XML. Como faço pra ler essas linhas? quero colocar cada tag do xml numa variável e inserir no banco. Alguém poderia me ajudar? Agradecido desde já!!!

--
--
------------------------------------
Grupo Python-Brasil
https://wiki.python.org.br/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/python-brasil/5cb8c108-d5ce-480c-9c86-f9dd0f4b2efen%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages