XML Pretty Print в Linux Bash и Python

Xml Pretty Print V Linux Bash I Python



XML е проектиран като четим от човека език за маркиране, но само ако е добре форматиран. Ако отворите XML файл, може да не успеете да разберете съдържанието, особено за голям XML файл. Можете обаче да отпечатате XML на Bash или Python, за да го направите лесно четим от хора. Това ръководство представя различните начини за отпечатване на XML в Linux Bash и Python.

Как да отпечатате красиво XML в Linux Bash и Python

Когато работите с Python, може да получите случай, в който искате да отпечатате XML. Може да е външен XML файл или XML кодът, включен в скрипта на Python. За Linux Bash може да искате да отворите XML файл на вашия терминал, за да видите съдържанието му. Какъвто и да е случаят, ще видим различните начини за красиво отпечатване на XML.







1. Pretty Print XML в Python



Преди да се задълбочим в опциите, следният е XML файлът, с който ще работим за нашия пример:







В Python можете да работите с XML по два основни начина. Да предположим, че имате дадения XML файл като външен файл и искате да го отпечатате красиво. Можете да импортирате библиотеката „xml.dom.minidom“. Веднъж импортирани, можете да използвате Python open(), за да прочетете съдържанието на вашия външен файл. След това можете да използвате toprettyxml(), за да отпечатате добре своя външен XML файл.

В следващия пример използваме нашия външен файл „details.xml“ и създаваме различни променливи в кода:



След това можем да изпълним нашия Python скрипт на терминала, за да получим добре форматирания изход, както е показано на следващата фигура. Обърнете внимание как използването на библиотеката DOM Python помага за спретнато форматиране на XML, което го прави лесно четим от всеки, който изпълнява скрипта на Python:

Като алтернатива, ако имате само малък XML файл, можете да го включите директно във вашия скрипт на Python. Все още се нуждаете от библиотеката DOM Python, за да форматирате вътрешния XML във вашия скрипт. Функцията, която се използва е същата като при работа с външен XML файл, само че включваме XML директно.

Вижте как включваме XML в следното изображение:

След това можете да изпълните своя Python скрипт, както направихме по-рано. Ще получите красивата печатна версия на вашия XML файл във вашия изход, както получихме в следния изход:

Тази опция се прилага само когато вашият XML файл има няколко реда. За голям XML файл помислете дали да не го отворите като външен файл.

2. Pretty Print XML в Bash

На вашия терминал е възможно да преглеждате съдържанието на файлове, включително XML. Например, можете да използвате командата „cat“, за да покажете съдържанието на нашия файл „details.xml“. Изходът обаче е нечетлив поради лошо форматиране.

За да отпечатате красиво този XML файл, има различни инструменти, които можете да използвате. Тук ще разгледаме две от често срещаните. Първо, можете да използвате „xmlstarlet“, който се инсталира на повечето Linux системи. Ако не е наличен във вашата система, изпълнете следната команда, за да го инсталирате:

sudo щракам Инсталирай xmlstarlet

С “xmlstarlet” на вашата Linux система можете да отпечатате XML красиво вашия файл, както е илюстрирано в следващия пример. Вашият изход ще бъде спретнато форматиран, което го прави по-лесен за четене:

Като алтернатива можете да използвате „xmllint“, за да постигнете същото. Започнете, като го инсталирате на вашата система със следната команда:

sudo ап Инсталирай libxml2-утили

Веднъж инсталиран, можете бързо да отпечатате вашия XML файл, като използвате следния синтаксис:

xmllint --формат details.xml

Вашият XML ще бъде форматиран и лесно четим, както е показано в следния пример:

Да предположим, че искате да създадете изход от форматирания XML. Можете да пренасочите изхода, за да създадете нов XML файл, както е показано в следния пример. Когато отворите новия файл, ще видите, че имате красивата отпечатана версия на XML:

Заключение

Възможно е да отпечатате доста XML файловете в Linux Bash или Python. С Python можете доста да отпечатате XML, като го включите във вашия код или го прочетете като външен файл. За Linux Bash можете да използвате различни инструменти на командния ред. Тази публикация описва подробно най-добрите опции за използване и в двата случая. Опитайте ги!