W piątek Centralny Ośrodek Informatyki rozesłał ankietę „Pismo w sprawie ankiety epuap.pdf” za pomocą ePUAP.
To pismo z tą ankietą, jako że była to masówka, spowodowało zablokowanie kolejki pobierania w urzędach korzystających EZD PUW. Rzekomo powodem był błąd składni w pliku XML z wiadomością. Tyle że weryfikowałem plik różnymi parserami i żadnego błędu składni XML nie ma.
Pytanie do jednostek korzystających z EZD RP. Czy u was zdarzyła się podobna historia, że system EZD RP nie potrafił pobrać tej wiadomości z ePUAP?
Witam, mamy to samo wyskakuje komunikat o błędnym pliku z który został pobrany z epuap (chodzi dokładnie o tą ankiete z MC). Wcześniejsze pobieranie awaryjne plików działało bez zarzutów w EZD RP.
u nas również wystąpiła taka sytuacja. System nie pobrał pliku, zablokował pobieranie. Pobieranie awaryjne nie zadziałało, ponieważ system nie dał rady wczytać przesyłki do systemu. Ale faktycznie z przesyłką mogło być coś nie tak, ponieważ nawet po wczytaniu do skrzynki ePUAP pliku pdf nie udało się odnaleźć. W pakiecie go nie było.
Wg nas wyglądało to trochę tak, jakby ktoś przygotował przesyłkę xml, ale przed wysłaniem np zmienił nazwę pisma pdf i system jej nie załączył do wysyłki. W każdym razie przesyłka nie miała treści merytorycznej.
Plik załącznika da się pozyskać. Proszę skorzystać z tej instrukcji. Wprawdzie początek i koniec dotyczy EZD PUW, ale reszta instrukcji jest uniwersalna.
Trzeba wgrać plik XML do kopii roboczych na epuap.gov.pl i stamtąd da się pobrać załącznik.
import xml.etree.ElementTree as ET
import base64
# Define namespaces
namespaces = {
'str': 'http://crd.gov.pl/xml/schematy/struktura/2009/11/16/'
}
# Parse XML from file
tree = ET.parse('Pismo w sprawie ankiety epuap.pdf_239657275.xml')
root = tree.getroot()
# Find the DaneZalacznika element using namespace
base64_element = root.find('.//str:DaneZalacznika', namespaces)
if base64_element is not None:
base64_data = base64_element.text.strip()
# Ensure correct padding
missing_padding = len(base64_data) % 4
if missing_padding:
base64_data += '=' * (4 - missing_padding)
# Decode base64
binary_data = base64.b64decode(base64_data)
# Get filename from XML attribute
zalacznik = root.find('.//str:Zalacznik', namespaces)
filename = zalacznik.get('nazwaPliku', 'output.pdf')
# Write to file
with open(filename, 'wb') as file:
file.write(binary_data)
print(f"PDF saved as: {filename}")
else:
print("DaneZalacznika element not found")
Dzień dobry,
przed chwilą otrzymaliśmy informację z instrukcją z NASK o awaryjnym pobieraniu wiadomości z platformy ePUAP.
Wychodzi na to, że krajowy problem.
Jednak jest problem, aby zalogować się na konto.