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

Réseau/Web Python Discussion :

Envoyer un mail en HTML


Sujet :

Réseau/Web Python

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 6
    Points
    6
    Par défaut Envoyer un mail en HTML
    Bonjour, j'ai programmé un script en python me permettant d'envoyer des mails via le serveur SMTP de mon FAI. J'aimerai ajouter à mon code, la possibilité d'envoyer des mails en HTML pour faire une newsletters. Cependant je n'arrive pas à trouver de solution. Je fais donc appel à vous. Si quelqu'un peut m'aider.

    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
    #!/bin/python
    # --*-- coding:UTF-8 --*--
     
    import smtplib
    import string, sys
    HOST = raw_input("Entrer l'adresse du serveur SMTP : \n")
    PORT = raw_input("Entrer le port du serveur SMTP (par defaut 25) : \n")
    FROM = raw_input("Entrer l'expediteur sous la forme (expediteur<mail@expediteur.fr>) : \n")
    TO = raw_input("Entrer le destinataire : \n")
    SUBJECT = raw_input("Entrer l'intitulé du message : \n")
    BODY = raw_input("Entrer le message : \n")
     
    body = string.join(("From: %s" % FROM,
        "To: %s" % TO,
        "Subject: %s" % SUBJECT,
        "",
        BODY), "\r\n")
     
    print body
     
    server = smtplib.SMTP(HOST, PORT)
    server.sendmail(FROM, [TO], body)
    server.quit()

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,
    La question est qu'est ce qui ne fonctionne pas:
    - avez vous réussi a expédier des "body" réduits à du texte simple?
    - est-ce que c'est seulement l'envoi de "body" HTML qui ne fonctionne pas... et çà fait quoi qui ne vous plait pas?

    De façon générale, smtp sait transporter du plain-text. Si on veut lui faire transporter des messages dans des formats MIME particulier - i.e. que le client MAIL du destinataire interprète le HTML, il faut lui dire que le contenu est HTML....
    Avec un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    body = string.join(("From: %s" % FROM,
        "To: %s" % TO,
        "Subject: %s" % SUBJECT,
        "MIME-Version: 1.0",
        "Content-Type: text/html",
        "",
        BODY), "\r\n")
    Mais il est généralement préférable de laisse construire le body via la bibliothèque email
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    C'est bon ça fonctionne, je te remerçi pour ton aide

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1
    Points : 1
    Points
    1

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    body = string.join(("From: %s" % FROM,
        "To: %s" % TO,
        "Subject: %s" % SUBJECT,
        "MIME-Version: 1.0",
        "Content-Type: text/html",
        "",
        BODY), "\r\n")
    Non, ce code fonctionne

Discussions similaires

  1. Envoyer un mail en HTML via Google Mail ?
    Par Toulousaing dans le forum E-Mailing
    Réponses: 2
    Dernier message: 23/09/2014, 11h35
  2. envoyer un mail formater html
    Par Viduc dans le forum Modules
    Réponses: 1
    Dernier message: 27/04/2010, 13h45
  3. Réponses: 1
    Dernier message: 04/12/2005, 18h02
  4. [PERL/CGI] Envoyer un mail html/javascript
    Par LE NEINDRE dans le forum Web
    Réponses: 5
    Dernier message: 25/11/2005, 11h14
  5. [VB6] Comment envoyer un mail HTML par Winsocks ?
    Par hedgehog dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 07/05/2004, 10h04

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