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 :

mail mime et français


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de venomelektro
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2004
    Messages : 521
    Par défaut mail mime et français
    Je me suis mis recement mis a python pour l envoi d emails depuis un serveur web car j ai remarqué que le module email.MIMEText fixait un certain nombre de problème que j avais avec mon ancienne solution PHP...

    ...un certain nombre seulement... car j ai un probleme précis

    Mon mail est en français et contient donc des caractères comme é , à ou ç

    le probleme est que mon mail html passe tres bien dans tous les webmails et clients desktop que j ai pu tester sauf outlook 2007 ( j ai pas eu de retours sur d autres versions, mais thunderbird, foxmail ou des clients mac et linux sont tous OK)

    Dans outlook et uniquement j obtiens de maniere incompréhensible des "?" sur certains caracteres comme des espaces ou certains accents. Parfois un é accent passe et pas le suivant...

    pour le subject, je m en sort avec ceci

    msgRoot['Subject'] = u' %s souhaite vous faire découvrir**...."' % (name)
    Alors que le From ( msgRoot['From'] ) la meme technique ne sort un truc du style : =?utf-8?q?T........v=2E


    Bref , c est le gros carnage et je ne peux malheuresement pas savoir qui a outlook et qui l a pas...

    mon fichier python contient ceci :

    # coding=iso-8859-15

  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,

    Il me semble que j'avais résolu ce genre de pb (mais ça fait un certain temps).

    Essaie de t'inspirer de mon tuto ici:

    http://python.jpvweb.com/mesrecettes...xpedition_mail.

    Et dis-moi si ça marche.

    Tyrtamos

  3. #3
    Membre éclairé Avatar de venomelektro
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2004
    Messages : 521
    Par défaut
    merci pour le lien,

    j ai regardé, j utilise une methode tres propre de la tienne.

    tes problemes etaient aussi uniquement sur outlook/exchange?


    c est delicat, car mon client utilise ca , mais il semble que le probleme soit vraiment lié a exchange, meme sous outlook 2007 sans exchange, je ne reproduit pas le bug.

  4. #4
    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
    J'ai simplement pu constater que ça marchait avec outlook (2003) (sans exchange) et avec outlook express.

    Regarde surtout la partie encodage: le protocole mail a dû être inventé avec de l'ascii, et tout a été ajouté après: ça fait un peu désordre.

    Le seul problème que j'ai rencontré avec ce code, c'est quand j'ai voulu envoyer 200 mails (destinaires et contenus différents) d'un coup: mon fournisseur d'accès, croyant que c'était du spam, a coupé la ligne . j'ai dû envoyer des courriers papier. Je mettrai une tempo la prochaine fois.

    Tyrtamos

  5. #5
    Membre éclairé Avatar de venomelektro
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2004
    Messages : 521
    Par défaut
    en fait il semble qu il y ai deux choses :


    1) il faut vraiment encoder tous les accents et caractères en html
    é => é
    " => "

    parfois

    " " ->  

    2) attention aux copier/coller : la maquette etait réalisée dans photoshop et en copiant/collant les textes de se soft, j ai vu avec un editeur hexa des caracteres pas beau dans mon texte ..


    Résultat : pour le body c est ok

    par contre j ai toujours le probleme sur le champ from et la je bloque encore

    strFrom = 'Truc à bidule <truc@xxxxxxxxx.fr>'

    msgRoot = MIMEMultipart('related')
    msgRoot['Subject'] = u'%s à é du texte ' % ( friend_name )
    msgRoot['From'] = strFrom

    # plus loin

    import smtplib
    smtp = smtplib.SMTP()
    smtp.connect('localhost')
    smtp.sendmail(strFrom, strTo, msgRoot.as_string())
    smtp.quit()
    La , ce qui se passe, c est que le sujet est correctement encodé mais l expéditeur est mal interpreté : un ? remplace le caractere "à"


    J ai deja essayé le 'u' devant la string du strFrom , mais c est pire

    je pense que c est lié au fait que smtp.sendmail aime pas trop un premier param accentué , mais comment faire?

  6. #6
    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,

    Une idée: essaye:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    strFrom =  u'Truc à bidule <truc@xxxxxxxxx.fr>'.encode('iso-8859-15')
    Tyrtamos

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

Discussions similaires

  1. mail MIME avec PJ, pb de texte tronqué
    Par Invité dans le forum Langage
    Réponses: 0
    Dernier message: 06/09/2011, 05h57
  2. [PEAR][Mail] Return path avec Mail Mime de Pear
    Par boteha dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 13/05/2010, 15h12
  3. [PEAR Mail Mime] HTML visible dans le mail
    Par bigltnt dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 28/09/2009, 16h31
  4. Réponses: 12
    Dernier message: 10/11/2008, 10h14
  5. [Mail] Mail mime
    Par maxnad dans le forum Langage
    Réponses: 5
    Dernier message: 07/09/2005, 17h11

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