Envoi efficace d'e-mails à plusieurs destinataires avec la bibliothèque smtplib de Python
De nombreux développeurs ont été confrontés à des difficultés lors de l'envoi d'e-mails à plusieurs destinataires à l'aide de la bibliothèque smtplib de Python. L'approche traditionnelle consistant à utiliser sendmail(to_addrs, msg) de smtplib avec une liste d'adresses e-mail comme paramètre to_addrs n'a pas donné les résultats souhaités. Au lieu de cela, seul le premier destinataire recevrait l'e-mail.
Le nœud du problème réside dans la différence entre les formats d'entrée attendus pour smtplib et le module email.Message. Pour garantir une livraison réussie à plusieurs destinataires, les en-têtes « À », « Cc » et « Cci » du message électronique (msg) doivent être spécifiés sous forme de chaînes avec des adresses e-mail délimitées par des virgules, telles que :
<code class="python">msg = MIMEMultipart() msg["To"] = "[email protected],[email protected],[email protected]" msg["Cc"] = "[email protected],[email protected]"</code>
Cependant, le paramètre to_addrs de sendmail() attend une liste d'adresses e-mail. Pour répondre à cette exigence, divisez les chaînes délimitées par des virgules en listes, comme démontré dans le code suivant :
<code class="python">smtp.sendmail(msg["From"], msg["To"].split(",") + msg["Cc"].split(","), msg.as_string())</code>
En adhérant à ces directives, les développeurs peuvent exploiter la puissance de smtplib pour envoyer efficacement des e-mails à plusieurs destinataires. , en veillant à ce que toutes les parties concernées reçoivent les messages prévus.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!