From 38ba5d399814cdf7c82e8538a75e1cb7e81c0b68 Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Mon, 4 Jun 2018 20:30:44 -0300 Subject: [PATCH] =?UTF-8?q?[NEW]=20Exporta=C3=A7=C3=A3o=20do=20objeto=20ge?= =?UTF-8?q?nerateDS=20em=20lxml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pynfe/processamento/comunicacao.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pynfe/processamento/comunicacao.py b/pynfe/processamento/comunicacao.py index fbeb511..c56549b 100644 --- a/pynfe/processamento/comunicacao.py +++ b/pynfe/processamento/comunicacao.py @@ -3,7 +3,7 @@ import re import ssl import datetime import requests -from pynfe.utils import etree, so_numeros +from pynfe.utils import etree, so_numeros, StringIO from pynfe.utils.flags import ( NAMESPACE_NFE, NAMESPACE_XSD, @@ -43,6 +43,7 @@ class ComunicacaoSefaz(Comunicacao): _versao = VERSAO_PADRAO _assinatura = AssinaturaA1 + _namespace = NAMESPACE_NFE def autorizacao(self, modelo, nota_fiscal, id_lote=1, ind_sinc=1): """ @@ -470,6 +471,18 @@ class ComunicacaoSefaz(Comunicacao): a.append(dados) return raiz + def _construir_etree_ds(self, ds): + output = StringIO() + ds.export( + output, + 0, + pretty_print=False, + namespacedef_='xmlns="' + self._namespace + '"' + ) + contents = output.getvalue() + output.close() + return etree.fromstring(contents) + def _post_header(self): """Retorna um dicionário com os atributos para o cabeçalho da requisição HTTP""" # PE é a únca UF que exige SOAPAction no header