标签: email

如何使用python smtplib向多个收件人发送电子邮件?

经过多次搜索后,我无法找到如何使用smtplib.sendmail发送给多个收件人.问题是每次发送邮件时邮件标题似乎包含多个地址,但事实上只有第一个收件人才会收到电子邮件.

问题似乎是email.Message模块期望与smtplib.sendmail()函数不同的东西.

简而言之,要发送给多个收件人,您应将标头设置为逗号分隔的电子邮件地址字符串.但该sendmail()参数to_addrs应该是电子邮件地址列表.

from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
import smtplib

msg = MIMEMultipart()
msg["Subject"] = "Example"
msg["From"] = "me@example.com"
msg["To"] = "malcom@example.com,reynolds@example.com,firefly@example.com"
msg["Cc"] = "serenity@example.com,inara@example.com"
body = MIMEText("example email body")
msg.attach(body)
smtp = smtplib.SMTP("mailhost.example.com", 25)
smtp.sendmail(msg["From"], msg["To"].split(",") + msg["Cc"].split(","), msg.as_string())
smtp.quit()
Run Code Online (Sandbox Code Playgroud)

python email message smtp smtplib

180
推荐指数
12
解决办法
20万
查看次数

使用jQuery和regex验证电子邮件地址

我不太清楚如何做到这一点.我需要使用正则表达式验证电子邮件地址,如下所示:

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)
Run Code Online (Sandbox Code Playgroud)

然后我需要在这样的jQuery函数中运行它:

$j("#fld_emailaddress").live('change',function() { 
var emailaddress = $j("#fld_emailaddress").val();

// validation here? 

if(emailaddress){}

// end validation

$j.ajax({  
        type: "POST",  
         url: "../ff-admin/ff-register/ff-user-check.php",  
        data: "fld_emailaddress="+ emailaddress,  
        success: function(msg)
        { 
            if(msg == 'OK') { 
            $j("#fld_username").attr('disabled',false); 
            $j("#fld_password").attr('disabled',false); 
            $j("#cmd_register_submit").attr('disabled',false); 
            $j("#fld_emailaddress").removeClass('object_error'); // if necessary
            $j("#fld_emailaddress").addClass("object_ok");
            $j('#email_ac').html('&nbsp;<img src="img/cool.png" align="absmiddle"> <font color="Green"> Your email <strong>'+ emailaddress+'</strong> is OK.</font>  ');
            } else {  
            $j("#fld_username").attr('disabled',true); 
            $j("#fld_password").attr('disabled',true); 
            $j("#cmd_register_submit").attr('disabled',true);  
            $j("#fld_emailaddress").removeClass('object_ok'); // if necessary
            $j("#fld_emailaddress").addClass("object_error");
            $j('#email_ac').html(msg);
            }
        }
     });
});
Run Code Online (Sandbox Code Playgroud)

验证在哪里以及表达式是什么?

regex email validation email-validation

173
推荐指数
5
解决办法
42万
查看次数

return-path,reply-to和from之间的行为区别是什么?

在我们的邮件应用程序中,我们发送带有以下标题的电子邮件:

FROM: marketing@customer.com
TO: subscriber1@domain1.com
Return-PATH: bouncemgmt@ourcompany.com
Run Code Online (Sandbox Code Playgroud)

我们面临的问题是,某些电子邮件服务器会立即退回邮件,并使用来自或反向路径(marketing@customer.com)代替我们的反弹管理服务器.我们想知道如果我们能够捕获所有跳出,我们是否在标题中修改回复与返回路径相同.

欢迎任何其他想法?

我们使用以下文档作为参考: VERP RFC Bounce Messages

SMTP日志解析以获得退回

编辑1:更多信息,看看我们是否可以得到这个解决方案.

我们想知道中继邮件的电子邮件服务器将在什么时候选择使用回复路径与返回路径.我们注意到,当第一个中继消息的smtp服务器被拒绝时,它会将其发送到reply-to,但是当它在一跳之后发生时它将它发送到返回路径.

email email-client smtp rfc bounce

155
推荐指数
3
解决办法
22万
查看次数

如何用Python发送电子邮件?

此代码可以正常工作并向我发送电子邮件:

import smtplib
#SERVER = "localhost"

FROM = 'monty@python.com'

TO = ["jon@mycompany.com"] # must be a list

SUBJECT = "Hello!"

TEXT = "This message was sent with Python's smtplib."

# Prepare actual message

message = """\
From: %s
To: %s
Subject: %s

%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)

# Send the mail

server = smtplib.SMTP('myserver')
server.sendmail(FROM, TO, message)
server.quit()
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试将其包装在这样的函数中:

def sendMail(FROM,TO,SUBJECT,TEXT,SERVER):
    import smtplib
    """this is some test documentation in the function"""
    message = """\
        From: %s
        To: …
Run Code Online (Sandbox Code Playgroud)

python email function smtplib

155
推荐指数
8
解决办法
26万
查看次数

如何从终端发送电子邮件?

我知道有很多方法可以从Linux/MacOS的终端发送电子邮件,但我似乎无法找到有关如何做到这一点的正确文档.

基本上我需要它为我的bash脚本,每当文件发生更改时通知我.

email bash terminal

155
推荐指数
7
解决办法
32万
查看次数

如何通过Django发送电子邮件?

在我settings.py,我有以下内容:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

# Host for sending e-mail.
EMAIL_HOST = 'localhost'

# Port for sending e-mail.
EMAIL_PORT = 1025

# Optional SMTP authentication information for EMAIL_HOST.
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_USE_TLS = False
Run Code Online (Sandbox Code Playgroud)

我的邮箱代码:

from django.core.mail import EmailMessage
email = EmailMessage('Hello', 'World', to=['user@gmail.com'])
email.send()
Run Code Online (Sandbox Code Playgroud)

当然,如果我通过设置调试服务器python -m smtpd -n -c DebuggingServer localhost:1025,我可以看到终端中的电子邮件.

但是,我如何实际将电子邮件发送到调试服务器而不是user@gmail.com?

在阅读完答案后,让我直截了当:

  1. 你不能使用localhost(简单的ubuntu pc)发送电子邮件吗?

  2. 我认为django 1.3 send_mail()有点弃用,EmailMessage.send()而是用来代替?

python email django smtp

145
推荐指数
7
解决办法
16万
查看次数

从linux终端发送一行邮件

我知道maillinux中有命令通过命令行发送电子邮件.如何从终端发送一行简单的电子邮件?

例如:

mail user@gmail.com [subject] [body]
Run Code Online (Sandbox Code Playgroud)

并且在没有任何确认或提示的情况下发送电子邮件给用户?

原因是,我希望在java程序中发生特定事件时通过电子邮件向我发送简短消息.我的想法是,我将使用Runtime.getRuntime()......等来发送mail command我的java程序.

我过去cron经常做类似的事情,但目前的实现并没有使用cron,所以我需要尝试这样做.

linux email

142
推荐指数
6
解决办法
35万
查看次数

邮件multipart/alternative vs multipart/mixed

当创建的电子邮件,你都应该设置内容类型multipart/alternative发送HTML和文本时,或multipart/mixed发送文本和附件时.

那么,如果要发送HTML,文本和附件,该怎么办?使用两者?

email mime smtp content-type

138
推荐指数
8
解决办法
12万
查看次数

在mailto正文中插入换行符

我想在我的mailto正文中插入换行符.我尝试了%0A,%0D和%0D%0A.没有什么对我有用.我在Mac OSX上使用Google Chrome在Gmail,Yahoo,Apple Mail,Outlook 2010,Outlook.com和Thunderbird上进行了测试.

有什么帮助吗?

这是我的代码:

<a href="mailto:email@mycompany.com?subject=Subscribe&body=Lastame%20%3A%0D%0A%20Firstname%20%3A"><img alt="Subscribe" class="center" height="50" src="subscribe.png" style="width: 137px; height: 50px; color: #4da6f7; font-size: 20px; display: block;" width="137"></a>
Run Code Online (Sandbox Code Playgroud)

mailto email

137
推荐指数
5
解决办法
11万
查看次数

Android:使用intent共享纯文本(对所有消息传递应用程序)

我正在尝试使用intent分享一些文本:

Intent i = new Intent(android.content.Intent.ACTION_SEND);
i.setType("text/plain");  
i.putExtra(android.content.Intent.EXTRA_TEXT, "TEXT");
Run Code Online (Sandbox Code Playgroud)

和选择器翘曲:

startActivity(Intent.createChooser(sms, getResources().getString(R.string.share_using)));
Run Code Online (Sandbox Code Playgroud)

有用!但仅适用于电子邮件应用.
我需要的是所有消息应用程序的一般意图:电子邮件,短信,IM(Whatsapp,Viber,Gmail,SMS ...)尝试使用android.content.Intent.ACTION_VIEW 并尝试使用i.setType("vnd.android-dir/mms-sms");任何帮助...

("vnd.android-dir/mms-sms"仅使用sms共享!)

email sms android android-intent

131
推荐指数
4
解决办法
12万
查看次数