Mam ekstrakcji base64 ciąg ForeColor, struktura i Kontur wartości obrazów, mam listę z następującą strukturą:Decode pyton base64 String
forecolor=AgCEAg4DUQQCBQQGARMBFQE1AmUB
edge=AfCAFg5iIATCPwTAEIiBFggBDw
forecolor=AgAsAQ0CJAMcDRgOGg8DHQYeBzYBPQ4-DU0ETgNtBm4CfQI
próbuję rozszyfrować te wartości, ale jestem coraz Nieprawidłowa błąd wyściółka, tutaj jest dokładna błędu:
Traceback (most recent call last):
File "ImageVectorData.py", line 44, in <module>
print "Decoded String: " + decoded.decode('base64', 'strict')
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/encodings/base64_codec.py", line 42, in base64_decode
output = base64.decodestring(input)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/base64.py", line 321, in decodestring
return binascii.a2b_base64(s)
binascii.Error: Incorrect padding
Oto mój kod:
for item in value:
print "String before Split: " + item
if item.split("=")[0] == "forecolor":
decoded = (item.split("=")[1])
print "String to be decoded: " + decoded
print "Decoded String: " + decoded.decode('base64', 'strict')
Widziałem też interesująca się położyć, gdy pierwszy ciąg base64 ForeColor został odkodowany: Oto się umieścić tego:
String before Split: forecolor=AgCEAg4DUQQCBQQGARMBFQE1AmUB
String to be decoded: AgCEAg4DUQQCBQQGARMBFQE1AmUB
Decoded String: ?Q5e
Nie jestem pewien, co robię źle tutaj. Sprawdziłem następujący dokument Pythona i próbowałem, ale to też nie działało: http://docs.python.org/library/base64.html
Wartość 'edge' nie wydaje się być base64 zakodowany ciąg vlaid, więc Python daje komunikat o błędzie. Użyj poprawnych danych wejściowych, a rzeczy powinny działać. –
Jeśli spojrzysz na kod, próbuję tylko dekodować forecolor, więc nie sądzę, aby w tym momencie zadziałało ostrze. –
@SvenMarnach, możesz naprawić problem z dopełnieniem, dodając parę końcówki "==" na końcu łańcucha. Większym problemem jest to, że dekodowany wynik jest całkowicie nie do odczytania. –