XML Pretty Print v Linux Bash a Python

Xml Pretty Print V Linux Bash A Python



XML je navrženo jako lidsky čitelný značkovací jazyk, ale pouze v případě, že je pěkně naformátovaný. Pokud otevřete soubor XML, může se stát, že nebudete rozumět jeho obsahu, zejména u velkého souboru XML. Můžete však vytisknout XML na Bash nebo Python, aby byl snadno čitelný pro lidi. Tato příručka představuje různé způsoby tisku XML v Linux Bash a Python pěkně.

Jak pěkně tisknout XML v Linux Bash a Python

Při práci s Pythonem se může stát, že budete chtít vytisknout XML. Může to být externí soubor XML nebo kód XML, který je součástí skriptu Python. Pro Linux Bash možná budete chtít otevřít soubor XML na svém terminálu a zobrazit jeho obsah. Ať je to jakkoli, uvidíme různé způsoby, jak pěkně vytisknout XML.







1. Pretty Print XML v Pythonu



Než se pustíme do možností, zde je soubor XML, se kterým budeme pracovat v našem příkladu:







V Pythonu můžete pracovat s XML dvěma hlavními způsoby. Předpokládejme, že máte daný XML soubor jako externí soubor a chcete ho pěkně vytisknout. Můžete importovat knihovnu „xml.dom.minidom“. Po importu můžete použít Python open() ke čtení obsahu vašeho externího souboru. Poté můžete pomocí toprettyxml() vytisknout svůj externí soubor XML pěkně.

V následujícím příkladu používáme náš externí soubor „details.xml“ a vytváříme v kódu různé proměnné:



Potom můžeme spustit náš skript Python na terminálu, abychom získali pěkně zformátovaný výstup, jak je znázorněno na následujícím obrázku. Všimněte si, jak používání knihovny DOM Python pomáhá úhledně formátovat XML, takže je snadno čitelný pro každého, kdo spouští skript Python:

Případně, pokud máte pouze malý soubor XML, můžete jej začlenit přímo do skriptu Python. K formátování interního XML ve vašem skriptu stále potřebujete knihovnu DOM Python. Použitá funkce je stejná jako v případě práce s externím XML souborem, pouze zahrneme XML přímo.

Podívejte se, jak zahrneme XML do následujícího obrázku:

Poté můžete spustit svůj skript Python jako dříve. Ve svém výstupu získáte hezkou tiskovou verzi svého souboru XML, jako jsme získali v následujícím výstupu:

Tato možnost platí pouze v případě, že váš soubor XML obsahuje několik řádků. U velkého souboru XML zvažte jeho otevření jako externí soubor.

2. Pretty Print XML in Bash

Na vašem terminálu je možné zobrazit obsah souborů včetně XML. Například můžete použít příkaz „cat“ k zobrazení obsahu našeho souboru „details.xml“. Výstup je však nečitelný kvůli špatnému formátování.

Chcete-li tento soubor XML pěkně vytisknout, můžete použít různé nástroje. Zde se budeme zabývat dvěma z běžných. Nejprve můžete použít „xmlstarlet“, který je nainstalován na většině systémů Linux. Pokud není ve vašem systému k dispozici, spusťte následující příkaz a nainstalujte jej:

sudo snap Nainstalujte xmlstarlet

S „xmlstarlet“ na vašem systému Linux můžete XML pěkně vytisknout svůj soubor, jak je znázorněno v následujícím příkladu. Váš výstup bude úhledně naformátován, což usnadňuje čtení:

Alternativně můžete použít 'xmllint' k dosažení stejného. Začněte instalací do systému pomocí následujícího příkazu:

sudo apt Nainstalujte libxml2-utils

Po instalaci můžete rychle vytisknout soubor XML pomocí následující syntaxe:

xmllint --formát detaily.xml

Váš XML bude naformátován a bude snadno čitelný, jak ukazuje následující příklad:

Předpokládejme, že chcete vytvořit výstup z formátovaného XML. Výstup můžete přesměrovat a vytvořit nový soubor XML, jak ukazuje následující příklad. Když otevřete nový soubor, uvidíte, že máte pěkně vytištěnou verzi XML:

Závěr

Je možné pěkně tisknout soubory XML v Linux Bash nebo Python. S Pythonem můžete pěkně vytisknout XML tím, že jej začleníte do kódu nebo jej přečtete jako externí soubor. Pro Linux Bash můžete použít různé nástroje příkazového řádku. Tento příspěvek podrobně popisuje nejlepší možnosti použití v obou případech. Vyzkoušejte je!