IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

gérer erreur base64


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 8
    Par défaut gérer erreur base64
    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.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Par défaut
    Avec un try/except classique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    try:
         data = base64.decodestring(data64)
    except:
         pass

  3. #3
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 8
    Par défaut
    Merci beaucoup ! :-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gérer erreur SQL
    Par Nicolas94 dans le forum Langage
    Réponses: 2
    Dernier message: 23/08/2010, 08h55
  2. Comment gérer Erreur 404 ?
    Par jlb59 dans le forum Apache
    Réponses: 3
    Dernier message: 08/03/2010, 17h40
  3. [CS4] Gérer erreur sur formulaire PHP
    Par Lionel_aw dans le forum Dreamweaver
    Réponses: 0
    Dernier message: 01/11/2009, 16h41
  4. Réponses: 1
    Dernier message: 14/03/2009, 00h09
  5. [MySQL] Gérer erreur MySQL avec PHP
    Par saad.hessane dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 18/09/2008, 13h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo