Lekce 19 - Práce se soubory DocX v Pythonu - Analýza bloků
V předchozí lekci, Práce se soubory DocX v Pythonu - Čtení a struktura jsme si popsali základy XML struktury DocX
dokumentů. Ukázali jsme si taky, jak pomocí knihovny python-docx
přistupovat k odstavcům, run elementům, obrázkům a
tabulkám.
V dnešním tutoriálu práce se soubory v Pythonu dokončíme téma formátu DocX. Zaměříme se na největší problém, kterým je čtení obrázků. Vypracujeme také funkce pro načtení celého dokumentu.
Analýza a čtení souboru ve formátu DocX
Začneme tím, že si připravíme funkci, která bude analyzovat obsah
načteného odstavce. Pojmenujeme ji projdi_bloky(). Zde odbočíme
a povíme si něco o blocích. Blok je obecný pojem, který se
používá pro popis různých strukturálních jednotek formátu
.docx. V XML struktuře dokumentu se mohou objevit různé typy
bloků. Bloky mohou být reprezentovány různými XML elementy, jako jsou
<w:p> (odstavec), <w:tbl> (tabulka),
<w:sdt> (obsah ovládacích prvků) atd.
Analýza bloků
Naše funkce tedy jako argument bere kořenový objekt dokumentu. Jejím cílem je postupně projít všechny jeho bloky a rozhodnout, o jaký typ se bloku jedná. Víme, že obecně existují více typů bloků, my pro jednoduchost budeme ale rozlišovat jenom odstavce a tabulky. Kód vypadá následovně:
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit pouze tento kurz
Získej okamžitý přístup ke kurzu bez
časového omezení.
550 Kč
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Přístup k jednotlivým lekcím dle způsobu pořízení.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V tomto tutoriálu práce se DocX soubory v Pythonu sestavíme celý program k analýze a přečtení DocX souboru.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.
