【问题标题】:Python sending email from different from address with gmailPython从与gmail地址不同的地址发送电子邮件
【发布时间】:2012-06-26 22:52:46
【问题描述】:

我正在尝试让一封电子邮件看起来像是来自我们公司内的特定用户,以便自动发送客户跟进电子邮件。出于某种原因,我无法将“FROM”更改为看起来像任何人,但我登录 gmail 的帐户除外。

我知道 PHP 邮件程序库可以毫无问题地从任何人那里生成 FROM 地址 - 但由于某种原因我不能在 python 中。如果有帮助,我们有一个企业 gmail 帐户。

这是我正在使用的代码

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.MIMEImage import MIMEImage

def sendFollowupEmail(html):
  msg = MimeText('body')
  msg['Subject'] = 'subject'
  msg['From'] = "THIS IS THE EMAIL I WANT TO CHANGE@domain.com"
  msg['To'] = "client@client.com"




  username = 'accessaccount@gmail.com'
  password = 'password'
  server = smtplib.SMTP('smtp.gmail.com:587')
  server.starttls()
  server.login(username,password)  
  server.sendmail(me, you, msg.as_string())
  server.quit()    








  if __name__ == '__main__':
    sendFollowupEmail("test123")

这是一个 PHP,它可以让您从地址更改为您想要的任何内容

function sendFollowUpEmail($options) {

        /*
         * Send an email to a person or group.
         * Dependencies: PHPMailer
         * options: {
         *      'to' -> who to send the email to,
         *      'from'-> who the email was sent from,
         *      'subject'-> subject of the email,
         *      'body' -> the body of the email
         * }
         */
        $host = 'smtp.gmail.com';
        $username = "accessaccount@gmail.com";
        $password = "password";
        $port = 465;
        echo error_reporting(E_STRICT);

        require_once('PHPMailer/class.phpmailer.php');
        $mail = new PHPMailer();
        $body = $options['body'];

        $mail->IsSMTP();
        $mail->IsHTML(true);

        $mail->SMTPAuth = true;
        $mail->SMTPSecure = "ssl"; 
        $mail->Host = $host; 
        $mail->Port = $port;
        $mail->Username = $username; 
        $mail->Password = $password;
        $mail->SetFrom($options['from'], $options['from']);

        if($options['bcc']!='') {
            $mail->AddBCC($options['bcc'], $options['bcc']);
        }

        //$mail->AddReplyTo("name@yourdomain.com","First Last");
        $mail->Subject = $options['subject'];
        $mail->AltBody = "To view the message, please use an HTML compatible email viewer!";
        $mail->MsgHTML($body);
        $address = $options['to'];
        $mail->AddAddress($address);
        $mail->send();

【问题讨论】:

  • 你试过server.sendmail(msg['From'], you, msg.as_string())吗?
  • 根据我使用 git-format-patch 的经验,我相信使用 gmail 无法通过 smtp 执行此操作。我试图设置我的加号地址,但它不允许我这样做。不过我不确定
  • 你可以用 PHP 做到这一点——我知道这是事实。不知道有什么区别
  • gmail 可能不允许您这样做。
  • 我不认为它会,但 PHP 允许你这样做。

标签: php python email smtp


【解决方案1】:

添加到消息中

msg['Reply-To'] = "THIS IS THE EMAIL I WANT TO CHANGE@domain.com"

编辑

您可以做的一件事是在您的帐户和导入 中添加回信电子邮件。并选择它不作为别名。这将允许您从您的主帐户作为另一个帐户发送电子邮件。使用其他帐户的发件人地址

【讨论】:

  • 这允许将回复发送到电子邮件地址,但它仍然将 from 作为我用作访问权限的帐户
  • 为什么要投反对票?这遵循 python 遵循的 RFC 822 协议。
  • @corn3lius 如何隐藏/更改msg['From"] 电子邮件地址,使其看起来与众不同?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-03
  • 2018-09-21
  • 1970-01-01
  • 2011-11-18
  • 1970-01-01
相关资源
最近更新 更多