XML Pretty Print no Linux Bash e Python

Xml Pretty Print No Linux Bash E Python



XML é projetado como uma linguagem de marcação legível por humanos, mas apenas se for bem formatado. Se você abrir um arquivo XML, poderá não entender o conteúdo, especialmente para um arquivo XML grande. No entanto, você pode imprimir um XML em Bash ou Python para torná-lo facilmente legível por humanos. Este guia apresenta as diferentes maneiras de imprimir XML no Linux Bash e Python pretty.

Como fazer Pretty Print XML no Linux Bash e Python

Ao trabalhar com Python, você pode obter um caso em que deseja imprimir XML. Pode ser um arquivo XML externo ou o código XML incluído no script Python. Para Linux Bash, você pode querer abrir um arquivo XML em seu terminal para visualizar seu conteúdo. Seja qual for o caso, veremos as diferentes maneiras de imprimir o XML de maneira bonita.







1. Pretty Print XML em Python



Antes de nos aprofundarmos nas opções, o seguinte é o arquivo XML com o qual trabalharemos para nosso exemplo:







Em Python, você pode trabalhar com XML de duas maneiras principais. Suponha que você tenha o arquivo XML fornecido como um arquivo externo e deseja imprimi-lo de forma bonita. Você pode importar a biblioteca “xml.dom.minidom”. Depois de importado, você pode usar o Python open () para ler o conteúdo do seu arquivo externo. Depois disso, você pode usar o toprettyxml() para imprimir seu arquivo XML externo de forma bonita.

No exemplo a seguir, usamos nosso arquivo externo “details.xml” e criamos diferentes variáveis ​​no código:



Podemos então executar nosso script Python no terminal para obter a saída bastante formatada, conforme ilustrado na figura a seguir. Observe como o uso da biblioteca DOM Python ajuda a formatar o XML de maneira organizada, tornando-o facilmente legível por qualquer pessoa que execute o script Python:

Como alternativa, se você tiver apenas um pequeno arquivo XML, poderá incorporá-lo diretamente ao seu script Python. Você ainda precisa da biblioteca DOM Python para formatar o XML interno em seu script. A função que se utiliza é a mesma que no caso de trabalhar com um arquivo XML externo, só que incluímos o XML diretamente.

Veja como incluímos o XML na imagem a seguir:

Você pode então executar seu script Python como fizemos anteriormente. Você obterá a versão de impressão bonita de seu arquivo XML em sua saída como o que obtivemos em nossa seguinte saída:

Esta opção só se aplica quando seu arquivo XML tem poucas linhas. Para um arquivo XML grande, considere abri-lo como um arquivo externo.

2. Pretty Print XML no Bash

Em seu terminal, é possível visualizar o conteúdo de arquivos incluindo XML. Por exemplo, você pode usar o comando “cat” para exibir o conteúdo do nosso arquivo “details.xml”. No entanto, a saída é ilegível devido à má formatação.

Para imprimir este arquivo XML, existem diferentes ferramentas que você pode usar. Aqui, abordaremos dois dos mais comuns. Primeiro, você pode usar o “xmlstarlet” que vem instalado na maioria dos sistemas Linux. Se não estiver disponível em seu sistema, execute o seguinte comando para instalá-lo:

sudo foto instalar xmlstarlet

Com “xmlstarlet” em seu sistema Linux, você pode imprimir seu arquivo em formato XML, conforme ilustrado no exemplo a seguir. Sua saída será formatada de maneira organizada, o que facilita a leitura:

Alternativamente, você pode usar “xmllint” para conseguir o mesmo. Comece instalando-o em seu sistema com o seguinte comando:

sudo apto instalar libxml2-utils

Depois de instalado, você pode imprimir rapidamente seu arquivo XML usando a seguinte sintaxe:

xmllint --formatar detalhes.xml

Seu XML estará formatado e facilmente legível conforme o exemplo a seguir:

Suponha que você queira criar uma saída do XML formatado. Você pode redirecionar a saída para criar um novo arquivo XML conforme mostrado no exemplo a seguir. Ao abrir o novo arquivo, você verá que tem a bonita versão impressa do XML:

Conclusão

É possível imprimir bastante os arquivos XML no Linux Bash ou Python. Com o Python, você pode imprimir bastante o XML incorporando-o ao seu código ou lendo-o como um arquivo externo. Para Linux Bash, você pode usar diferentes ferramentas de linha de comando. Este post detalhou as melhores opções para usar em ambos os casos. Experimente!