19. diel - Práca so súbormi DocX v Pythone - Analýza blokov
V predchádzajúcej lekcii, Práca so súbormi DocX v Pythone - Čítanie a štruktúra, sme si popísali základy XML
štruktúry dokumentov DocX. Ukázali sme si tiež, ako pomocou knižnice
python-docx pristupovať k odsekom, run elementom,
obrázkom a tabuľkám.
V dnešnom tutoriáli práce so súbormi v Pythone dokončíme tému formátu DocX. Zameriame sa na najväčší problém, ktorým je čítanie obrázkov. Vypracujeme tiež funkcie na načítanie celého dokumentu.
Analýza a čítanie súboru vo formáte DocX
Začneme tým, že si pripravíme funkciu, ktorá bude analyzovať obsah
načítaného odseku. Pomenujeme ju iterate_blocks(). Tu odbočíme
a povieme si niečo o blokoch. Blok je všeobecný pojem,
ktorý sa používa na opis rôznych štrukturálnych jednotiek formátu
.docx. V XML štruktúre dokumentu sa môžu objaviť rôzne typy
blokov. Bloky môžu byť reprezentované rôznymi XML elementmi, ako sú
<w:p> (odsek), <w:tbl> (tabuľka),
<w:sdt> (obsah ovládacích prvkov) atď.
Analýza blokov
Naša funkcia teda ako argument berie koreňový objekt dokumentu. Jej cieľom je postupne prejsť všetky jeho bloky a rozhodnúť, o aký typ bloku sa jedná. Vieme, že vo všeobecnosti existuje viacero typov blokov, my pre jednoduchosť budeme ale rozlišovať iba odseky a tabuľky. Kód vyzerá takto:
...koniec náhľadu článku...
Pokračuj ďalej
Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť iba tento kurz
Získaj okamžitý prístup ku kurzu bez
časového obmedzenia.
550 kreditov
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Prístup k jednotlivým lekciám podľa spôsobu obstarania.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V tomto tutoriáli práce so súbormi DocX v Pythone zostavíme celý program na analýzu a prečítanie súboru DocX.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.
