abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:44 | Bezpečnostní upozornění

    Dne 21. října 2026 vydal projekt Node.js bezpečnostní aktualizace opravující deset zranitelností, včetně jedné umožňující potenciální vzdálené spuštění kódu (RCE). Nejzajímavější je CVE-2026-111497, chyba dekodéru Brotli, kterou objevili výzkumníci využívající OpenAI Codex Security. Chyba je v nativním dekodéru Brotli, nikoli v samotném JavaScriptu. Speciálně vytvořený komprimovaný vstup způsobí, že dekodér zamění

    … více »
    vencour | Komentářů: 0
    včera 17:44 | IT novinky

    Francouzský výrobce kabelů Nexans upozornil na napjaté dodávky elektrických kabelů. Výstavba nové výrobní linky pro některé typy kabelů může trvat přibližně tři roky. Datacentra potřebují rozsáhlé nízkonapěťové a středněnapěťové rozvody. Poptávka roste současně s modernizací elektrických sítí. Někteří odběratelé proto uzavírají výrazně delší dodavatelské smlouvy [Reuters].

    vencour | Komentářů: 6
    včera 14:44 | Zajímavý projekt

    Představena byla (𝕏) virtuální platforma FLYBENCH FPV, která nováčky provede zapojením a konstrukcí dronů.

    Ladislav Hagara | Komentářů: 3
    včera 04:11 | Nová verze

    Google Chrome 156 byl prohlášen za stabilní. Přehled novinek v poznámkách k vydání. Opraveno bylo 353 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    22.10. 20:22 | IT novinky

    Indická společnost eMudhra po bezpečnostním incidentu, tj. kompromitaci soukromých klíčů osmi mezilehlých certifikátů své certifikační autority, opouští globální byznys s SSL/TLS certifikáty.

    Ladislav Hagara | Komentářů: 4
    22.10. 15:44 | Bezpečnostní upozornění

    Dle Phoronixu zveřejnila společnost Trend Micro prostřednictvím programu Zero Day Initiative (ZDI) několik hlášení bezpečnostních zranitelností přímo na veřejném mailing listu LKML, přestože některé chyby dosud nemají opravu začleněnou do hlavní větve jádra. Mezi hlášenými problémy jsou dvě zranitelnosti s hodnocením CVSS 9.0, týkající se SMB Direct a KSMBD, které mohou umožnit vzdálené spuštění kódu. Další hlášení se týkají … více »

    vencour | Komentářů: 0
    22.10. 15:33 | Nová verze

    Správce hesel KeePassXC byl vydán ve verzi 2.8.0. Přechází na Qt 6, podporuje vkládání hesel s Waylandem, rychlé odemykání pomocí Polkitu nebo možnost nastavení klávesových zkratek (seznam změn).

    ʚĭɞ 🍉 | Komentářů: 0
    22.10. 15:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 2.0.0 LTS. S kódovým názvem Cinnamon Teal (čírka skořicová). S vyladěným protokolem Quack.

    Ladislav Hagara | Komentářů: 0
    22.10. 11:11 | Bezpečnostní upozornění

    V implementaci Broadcom 802.11 byla zjištěna chyba ve zpracování WPS/EAP, týká se to SDK od roku 2010. Broadcom podle výzkumníka Quentina Kaisera odmítl CVE přidělit. Modemy Huawei a Technicolor jsou používány i v ČR, v LTE routerech, běžných domácích routerech a firemních přístupových bodech, jejich současný počet a zranitelnost konkrétních verzí však zatím neznáme. Více detailů a demo. GitHub / Broadcom 802.11 SDK Detection Toolkit.

    vencour | Komentářů: 7
    22.10. 05:11 | Nová verze

    Byla vydána nová verze 10.8 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přibyl balíček DietPi WireGuard.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2901 hlasů
     Komentářů: 33, poslední 20.10. 23:44
    Rozcestník

    Dotaz: python parse XML s elementtree

    31.12.2012 15:36 adrinko | skóre: 22
    python parse XML s elementtree
    Přečteno: 876×
    Ahojte, oboznamujem sa prvýkrát s elementtree a potrebujem spracovať XMLko:
    <?xml version="1.0" encoding="Windows-1250"?>
    <rsp:responsePack version="2.0" id="001" state="ok" note="" programVersion="9801.8 (19.5.2011)" xmlns:rsp="http://www.stormware.cz/schema/version_2/response.xsd" xmlns:rdc="http://www.stormware.cz/schema/version_2/documentresponse.xsd" xmlns:typ="http://www.stormware.cz/schema/version_2/type.xsd" xmlns:lst="http://www.stormware.cz/schema/version_2/list.xsd" xmlns:lStk="http://www.stormware.cz/schema/version_2/list_stock.xsd" xmlns:lAdb="http://www.stormware.cz/schema/version_2/list_addBook.xsd" xmlns:acu="http://www.stormware.cz/schema/version_2/accountingunit.xsd" xmlns:inv="http://www.stormware.cz/schema/version_2/invoice.xsd" xmlns:vch="http://www.stormware.cz/schema/version_2/voucher.xsd" xmlns:int="http://www.stormware.cz/schema/version_2/intDoc.xsd" xmlns:stk="http://www.stormware.cz/schema/version_2/stock.xsd" xmlns:ord="http://www.stormware.cz/schema/version_2/order.xsd" xmlns:ofr="http://www.stormware.cz/schema/version_2/offer.xsd" xmlns:enq="http://www.stormware.cz/schema/version_2/enquiry.xsd" xmlns:vyd="http://www.stormware.cz/schema/version_2/vydejka.xsd" xmlns:pri="http://www.stormware.cz/schema/version_2/prijemka.xsd" xmlns:bal="http://www.stormware.cz/schema/version_2/balance.xsd" xmlns:pre="http://www.stormware.cz/schema/version_2/prevodka.xsd" xmlns:vyr="http://www.stormware.cz/schema/version_2/vyroba.xsd" xmlns:pro="http://www.stormware.cz/schema/version_2/prodejka.xsd" xmlns:con="http://www.stormware.cz/schema/version_2/contract.xsd" xmlns:adb="http://www.stormware.cz/schema/version_2/addressbook.xsd" xmlns:prm="http://www.stormware.cz/schema/version_2/parameter.xsd" xmlns:lCon="http://www.stormware.cz/schema/version_2/list_contract.xsd" xmlns:ctg="http://www.stormware.cz/schema/version_2/category.xsd" xmlns:ipm="http://www.stormware.cz/schema/version_2/intParam.xsd">
    <rsp:responsePackItem version="2.0" id="li1" state="ok">
        <lst:listInvoice version="2.0" dateTimeStamp="2011-05-27T10:47:23Z" dateValidFrom="2011-05-27" state="ok">
            <lst:invoice version="2.0">
                <inv:invoiceHeader>
                    <inv:id>20</inv:id>
                    <inv:invoiceType>issuedInvoice</inv:invoiceType>
                    <inv:number>
                        <typ:id>26</typ:id>
                        <typ:ids>1101</typ:ids>
                        <typ:numberRequested>110100001</typ:numberRequested>
                    </inv:number>
                    <inv:symVar>110100001</inv:symVar>
                    <inv:date>2011-01-30</inv:date>
                    <inv:dateTax>2011-01-30</inv:dateTax>
                    <inv:dateAccounting>2011-01-30</inv:dateAccounting>
                    <inv:dateDue>2011-02-13</inv:dateDue>
                    <inv:accounting>
                        <typ:id>17</typ:id>
                        <typ:ids>3Fv</typ:ids>
                    </inv:accounting>
                    <inv:classificationVAT>
                        <typ:id>251</typ:id>
                        <typ:ids>UD</typ:ids>
                        <typ:classificationVATType/>
                    </inv:classificationVAT>
                    <inv:text>Fakturujeme Vám zboží dle Vaší objednávky:  </inv:text>
                    <inv:partnerIdentity>
                        <typ:id>15</typ:id>
                        <typ:address>
                            <typ:company>INTEAK spol. s r. o.</typ:company>
                            <typ:division>prodejna</typ:division>
                            <typ:name>David Jánský</typ:name>
                            <typ:city>Benešovice</typ:city>
                            <typ:street>Jiřího z Poděbrad 35</typ:street>
                            <typ:zip>463 48</typ:zip>
                            <typ:ico>85236972</typ:ico>
                            <typ:dic>CZ85236972</typ:dic>
                        </typ:address>
                        <typ:shipToAddress>
                            <typ:company/>
                            <typ:division/>
                            <typ:name/>
                            <typ:city/>
                            <typ:street/>
                        </typ:shipToAddress>
                    </inv:partnerIdentity>
                    <inv:myIdentity>
                        <typ:address>
                            <typ:company>Novák </typ:company>
                            <typ:surname>Novák</typ:surname>
                            <typ:name>Jan</typ:name>
                            <typ:city>Jihlava 1</typ:city>
                            <typ:street>Horní</typ:street>
                            <typ:number>15</typ:number>
                            <typ:zip>586 01</typ:zip>
                            <typ:ico>12345678</typ:ico>
                            <typ:dic>CZ12345678</typ:dic>
                            <typ:phone>569 876 542</typ:phone>
                            <typ:mobilPhone>602 852 369</typ:mobilPhone>
                            <typ:fax>564 563 216</typ:fax>
                            <typ:email>info@novak.cz</typ:email>
                            <typ:www>www.novak.cz</typ:www>
                        </typ:address>
                    </inv:myIdentity>
                    <inv:dateOrder>2011-01-22</inv:dateOrder>
                    <inv:paymentType>
                        <typ:id>1</typ:id>
                        <typ:ids>příkazem</typ:ids>
                        <typ:paymentType>draft</typ:paymentType>
                    </inv:paymentType>
                    <inv:account>
                        <typ:id>2</typ:id>
                        <typ:ids>KB</typ:ids>
                    </inv:account>
                    <inv:symConst>0308</inv:symConst>
                    <inv:centre>
                        <typ:id>1</typ:id>
                        <typ:ids>BRNO</typ:ids>
                    </inv:centre>
                    <inv:activity>
                        <typ:id>2</typ:id>
                        <typ:ids>NÁBYTEK</typ:ids>
                    </inv:activity>
                    <inv:liquidation>
                        <typ:date>2011-02-12</typ:date>
                        <typ:amountHome>356</typ:amountHome>
                    </inv:liquidation>
                </inv:invoiceHeader>
                <inv:invoiceDetail>
                    <inv:invoiceItem>
                        <inv:id>19</inv:id>
                        <inv:text>Židle Z220</inv:text>
                        <inv:quantity>2.0</inv:quantity>
                        <inv:unit>ks</inv:unit>
                        <inv:coefficient>1.0</inv:coefficient>
                        <inv:rateVAT>high</inv:rateVAT>
                        <inv:discountPercentage>0.0</inv:discountPercentage>
                        <inv:homeCurrency>
                            <typ:unitPrice>1968</typ:unitPrice>
                            <typ:price>3936</typ:price>
                            <typ:priceVAT>787.2</typ:priceVAT>
                            <typ:priceSum>4723.2</typ:priceSum>
                        </inv:homeCurrency>
                        <inv:code>Z220</inv:code>
                        <inv:guarantee>0</inv:guarantee>
                        <inv:guaranteeType>none</inv:guaranteeType>
                        <inv:stockItem>
                            <typ:store>
                                <typ:id>1</typ:id>
                                <typ:ids>ZBOŽÍ</typ:ids>
                            </typ:store>
                            <typ:stockItem>
                                <typ:id>27</typ:id>
                                <typ:ids>Z220</typ:ids>
                                <typ:PLU>650</typ:PLU>
                            </typ:stockItem>
                        </inv:stockItem>
                    </inv:invoiceItem>
                    <inv:invoiceItem>
                        <inv:id>20</inv:id>
                        <inv:text>Konferenční stolek chrom</inv:text>
                        <inv:quantity>1.0</inv:quantity>
                        <inv:unit>ks</inv:unit>
                        <inv:coefficient>1.0</inv:coefficient>
                        <inv:rateVAT>high</inv:rateVAT>
                        <inv:discountPercentage>0.0</inv:discountPercentage>
                        <inv:homeCurrency>
                            <typ:unitPrice>7680</typ:unitPrice>
                            <typ:price>7680</typ:price>
                            <typ:priceVAT>1536</typ:priceVAT>
                            <typ:priceSum>9216</typ:priceSum>
                        </inv:homeCurrency>
                        <inv:note>Rozměr: 120 x 60</inv:note>
                        <inv:code>Konf11</inv:code>
                        <inv:guarantee>0</inv:guarantee>
                        <inv:guaranteeType>none</inv:guaranteeType>
                        <inv:stockItem>
                            <typ:store>
                                <typ:id>1</typ:id>
                                <typ:ids>ZBOŽÍ</typ:ids>
                            </typ:store>
                            <typ:stockItem>
                                <typ:id>10</typ:id>
                                <typ:ids>Konf11</typ:ids>
                                <typ:PLU>625</typ:PLU>
                            </typ:stockItem>
                        </inv:stockItem>
                    </inv:invoiceItem>
                    <inv:invoiceItem>
                        <inv:id>21</inv:id>
                        <inv:text>Křeslo čalouněné 1320</inv:text>
                        <inv:quantity>4.0</inv:quantity>
                        <inv:unit>ks</inv:unit>
                        <inv:coefficient>1.0</inv:coefficient>
                        <inv:rateVAT>high</inv:rateVAT>
                        <inv:discountPercentage>0.0</inv:discountPercentage>
                        <inv:homeCurrency>
                            <typ:unitPrice>5988</typ:unitPrice>
                            <typ:price>23952</typ:price>
                            <typ:priceVAT>4790.4</typ:priceVAT>
                            <typ:priceSum>28742.4</typ:priceSum>
                        </inv:homeCurrency>
                        <inv:code>Kř1320</inv:code>
                        <inv:guarantee>0</inv:guarantee>
                        <inv:guaranteeType>none</inv:guaranteeType>
                        <inv:stockItem>
                            <typ:store>
                                <typ:id>1</typ:id>
                                <typ:ids>ZBOŽÍ</typ:ids>
                            </typ:store>
                            <typ:stockItem>
                                <typ:id>13</typ:id>
                                <typ:ids>Kř1320</typ:ids>
                                <typ:PLU>627</typ:PLU>
                            </typ:stockItem>
                        </inv:stockItem>
                    </inv:invoiceItem>
                </inv:invoiceDetail>
                <inv:invoiceSummary>
                    <inv:roundingDocument>up2one</inv:roundingDocument>
                    <inv:roundingVAT>none</inv:roundingVAT>
                    <inv:homeCurrency>
                        <typ:priceNone>0</typ:priceNone>
                        <typ:priceLow>0</typ:priceLow>
                        <typ:priceLowVAT>0</typ:priceLowVAT>
                        <typ:priceLowSum>0</typ:priceLowSum>
                        <typ:priceHigh>35568</typ:priceHigh>
                        <typ:priceHighVAT>7113.6</typ:priceHighVAT>
                        <typ:priceHighSum>42681.6</typ:priceHighSum>
                        <typ:round>
                            <typ:priceRound>0.4</typ:priceRound>
                        </typ:round>
                    </inv:homeCurrency>
                </inv:invoiceSummary>
            </lst:invoice>
        </lst:listInvoice>
    </rsp:responsePackItem>
    </rsp:responsePack>
    
    Ako dostanem dáta z typ:priceHighSum, typ:name, typ:ico, typ:company, typ:date?

    Toto mi nefunguje:
    group='lst:invoice'
    for group in root.findall('inv:invoiceHeader'):
        invoiceHeader = group.find('inv:id').text
        print invoiceHeader
    

    Řešení dotazu:


    Odpovědi

    31.12.2012 17:19 Jary | skóre: 30 | blog: Jary má blog | Dům
    Rozbalit Rozbalit vše Re: python parse XML s elementtree
    To proto, že to inv je namespace prefix.

    IMHO, abys mohl používat inv:invoiceHeader, budeš muset ten prefix zaregistrovat. Ale nevím, jak se to s ElementTree dělá.

    Každopádně, tohle funguje:
    In [6]: t=ElementTree().parse('/tmp/windoury.xml')
    
    In [18]: t.tag
    Out[18]: '{http://www.stormware.cz/schema/version_2/response.xsd}responsePack'
    
    In [19]: t.findall('.//{http://www.stormware.cz/schema/version_2/invoice.xsd}invoiceHeader')
    Out[19]: [<Element '{http://www.stormware.cz/schema/version_2/invoice.xsd}invoiceHeader' at 0x29eb450>]
    
    IPython rulez BTW.
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
    1.1.2013 13:27 adrinko | skóre: 22
    Rozbalit Rozbalit vše Re: python parse XML s elementtree
    vdaka! nevedel som, na co su tam tie prefixy. uz mi to ako tak funguje a mozem postupne selektovat data. pekny novy rok zelam
    1.1.2013 13:59 adrinko | skóre: 22
    Rozbalit Rozbalit vše Re: python parse XML s elementtree
    btw, pokusal som sa zaregistrovat ten prefix s
    ET.register_namespace("inv", "http://www.stormware.cz/schema/version_2/invoice.xsd")
    aby sa to dalo pouzivat s inv:id, ale nejako to nefunguje u mna
    Traceback (most recent call last):
      File "C:\tutorial\temp_xml2.py", line 34, in module>
        for listInvoice in root.findall('inv:invoiceHeader'):
      File "C:\Python27\LIB\xml\etree\ElementTree.py", line 390, in findall
        return ElementPath.findall(self, path, namespaces)
      File "C:\Python27\LIB\xml\etree\ElementPath.py", line 293, in findall
        return list(iterfind(elem, path, namespaces))
      File "C:\Python27\LIB\xml\etree\ElementPath.py", line 259, in iterfind
        token = next()
      File "C:\Python27\LIB\xml\etree\ElementPath.py", line 83, in xpath_tokenizer
        raise SyntaxError("prefix %r not found in prefix map" % prefix)
    SyntaxError: prefix 'inv' not found in prefix map
    >>>
    1.1.2013 19:11 Jary | skóre: 30 | blog: Jary má blog | Dům
    Rozbalit Rozbalit vše Re: python parse XML s elementtree
    Mě to taky nefungovalo, proto jsem psal, že nevím jak to udělat s ElementTree

    Nicméně mám hodně rád knihovnu lxml. Je dost kompatibilní s ElementTree a je k němu i dobrá dokumentace, která pojednává mimo jiné i o jmenných prostorech.
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.