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 :

echapper caracteres speciaux avec mysqldb


Sujet :

Python

  1. #1
    Membre confirmé Avatar de chaying
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut echapper caracteres speciaux avec mysqldb
    Bonjour

    J'ai le code suivant qui lit un fichier de configuration en vue de se connecter a une database :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    class ScriptorDatabase():
        '''
            Class which manages databases
        '''
        def __init__(self):
            # read configuration file
            CFG_PATH = os.path.dirname(__file__).strip('classes') + 'scriptor.cfg'
     
            config = ConfigParser.RawConfigParser()
            config.read(CFG_PATH)
     
     
            if config.get('database', 'DB_USER'):
                self.DB_USER = config.get('database', 'DB_USER')
     
            if config.get('database', 'DB_PASSWD'):
                self.DB_PASSWD = config.get('database', 'DB_PASSWD')
     
            if config.get('database', 'DB_HOST'):
                self.DB_HOST = config.get('database', 'DB_HOST')
     
            if config.get('database', 'DB_NAME'):
                self.DB_NAME = config.get('database', 'DB_NAME')
     
            self.DB_CONNEX = builder()(user=self.DB_USER, passwd=self.DB_PASSWD, host=self.DB_HOST, db=self.DB_NAME)
    Mais recois le message d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Traceback (most recent call last):
      File "/home/moi/scriptor/classes/scriptorDatabase.py", line 61, in <module>
        d = scriptorDatabase()
      File "/home/moi/scriptor/classes/scriptorDatabase.py", line 33, in __init__
        self.DB_CONNEX = builder()(user=self.DB_USER, passwd=self.DB_PASSWD, host=self.DB_HOST, db=self.DB_NAME)
      File "/usr/lib/pymodules/python2.7/sqlobject/mysql/mysqlconnection.py", line 51, in __init__
        DBAPI.__init__(self, **kw)
      File "/usr/lib/pymodules/python2.7/sqlobject/dbconnection.py", line 256, in __init__
        DBConnection.__init__(self, **kw)
    TypeError: __init__() got an unexpected keyword argument 'passwd'
    Je precise que le password en question est Gr87^%j

    Je suppose que l'erreur est due aux caracteres speciaux mais je ne vois pas comment
    enpecher python de les interpreter, ni a quel niveau du code.

    Merci

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    L'erreur ne conteste pas le mot de passe, mais l'argument 'passwd' lui-même: "got an unexpected keyword argument 'passwd'"

    il faut plutôt chercher dans cette direction.

  3. #3
    Membre confirmé Avatar de chaying
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut
    Merci !

    C'etait ca, apres verification du code dans /usr/lib/pymodules/python2.7/sqlobject/mysql/mysqlconnection.py le bon argument etait password et non passwd.

    Je suivais ce tuto : http://www.ibm.com/developerworks/li...qlo/index.html et n'est pas pense qu'ils pouvaient avoir fait une erreur.

    Merci encore.

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

Discussions similaires

  1. Caractere speciaux avec expression réguliere
    Par facilus68 dans le forum Général Java
    Réponses: 6
    Dernier message: 13/05/2009, 14h45
  2. Probleme avec les caracteres speciaux
    Par flox dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 29/05/2006, 15h21
  3. [MySQL] pb avec caracteres speciaux et utf8
    Par dkmatt dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/05/2006, 21h07
  4. Nom composant javascript avec caractere speciaux ?
    Par beepmaster dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/12/2005, 14h19
  5. [Regex]Match d'une regexp avec une chaîne avec caractères spéciaux
    Par gdawirs dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 25/11/2005, 12h24

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