Получить текст строки из группового тега - PullRequest
0 голосов
/ 30 апреля 2019

Я хочу получить строку содержимого группового тега xml

Пример этого xml:

<retEvento versao="1.00" xmlns="http://www.portalfiscal.inf.br/nfe">
    <infEvento>
        <tpAmb>2</tpAmb>
        <verAplic>SVRSnfce201808211044</verAplic>
        <cOrgao>22</cOrgao>
        <cStat>135</cStat>
        <xMotivo>Evento registrado e vinculado a NF-e</xMotivo>
        <chNFe>XXXXXXXXXXXXXXXXXXXXXXXXXXX</chNFe>
        <tpEvento>110111</tpEvento>
        <nSeqEvento>1</nSeqEvento>
        <dhRegEvento>2019-04-17T15:59:45-03:00</dhRegEvento>
        <nProt>YYYYYYYYYYYYYYY</nProt>
    </infEvento>
</retEvento>

И я хочу получить содержимое строки группы infEvento.Как это:

<infEvento>
        <tpAmb>2</tpAmb>
        <verAplic>SVRSnfce201808211044</verAplic>
        <cOrgao>22</cOrgao>
        <cStat>135</cStat>
        <xMotivo>Evento registrado e vinculado a NF-e</xMotivo>
        <chNFe>XXXXXXXXXXXXXXXXXXXXXXXXXXX</chNFe>
        <tpEvento>110111</tpEvento>
        <nSeqEvento>1</nSeqEvento>
        <dhRegEvento>2019-04-17T15:59:45-03:00</dhRegEvento>
        <nProt>YYYYYYYYYYYYYYY</nProt>
    </infEvento>

Я пытаюсь это:

ns = {'ns':'http://www.portalfiscal.inf.br/nfe'}
el.xpath('//ns:retEvento',namespaces=ns)[0].text

но я ничего не получаю: (

1 Ответ

2 голосов
/ 30 апреля 2019

Попробуйте использовать метод tostring.

etree.tostring(el.xpath('//ns:retEvento',namespaces=ns)[0])
...