Bonjour,

J'ai fait un petit script destiné à me parser le premier champ d'un fichier .CSV qui est codé en base64.

Je récupère bien le premier champ et le décode au moyen de base64.decodestring, mais mon CSV est gros, mal formé, et de temps en temps il y a une ligne qui contient une erreur dans le champ en base64.

Typiquement, ça arrête mon script qui me dit:

Traceback (most recent call last):
File "./debug-base64decode.py", line 24, in <module>
line=(base64.decodestring(line))+"\n"
File "/usr/lib/python2.5/base64.py", line 321, in decodestring
return binascii.a2b_base64(s)
binascii.Error: Incorrect padding

Ce que j'aimerais faire, c'est que mon script continue à fonctionner, et qu'il se contente de "skipper" les mauvaises valeurs. (Les mauvaises valeurs sont constituées des caractères normaux pour de la base64, je n'ai pas pu déterminer ce qui n'allait pas dans ces quelques valeurs, qui finissent bien par ==)

Est-ce possible ?

Merci beaucoup.