我能通过Mailgun获取到达的邮件吗?

1 投票
1 回答
2334 浏览
提问于 2025-04-17 18:06

我用Mailgun给一个人发了封邮件,之后那个人回复了我。如果我想追踪那封来自他的邮件,我该怎么获取这封邮件呢?下面是代码:

1.sendmail.py

from smtplib import SMTP
import requests 

login_name = "postmaster@zzb.mailgun.org"
password   = "********"

def send_message_via_smtp():
smtp = SMTP("smtp.mailgun.org", 587)
smtp.login(login_name, password)
smtp.sendmail("zebozhuang@163.com","348284770@qq.com", "Subject:mailgun test \n\n just for test.\n\n") 
smtp.quit()



if __name__=="__main__":
send_message_via_smtp()

2.create_route.py

import requests
from werkzeug.datastructures import MultiDict

def create_route():
return requests.post(
        "https://api.mailgun.net/v2/routes",
        auth=("api", "key-9c4-t2q6fouilngjummvtv1rge7t00f2"),
        data=MultiDict([("priority", 1),
                    ("description", "Sample route"),
                    ("expression", "match_recipient('.*@qq.com')"),
                    ("action", "forward('qiyazhuang@gmail.com')"),
                    ("action", "stop()")])
    )

我创建了一个路由,并运行了sendmail.py这个脚本。当使用邮箱348284770@qq.com的人回复使用邮箱zebozhuang@163.com的人的时候,Gmail却没有通过Mailgun的“转发”方法收到这条消息。有人能告诉我这是为什么吗?

1 个回答

2

你的消息可能已经发送成功了。可以去Mailgun控制面板的“日志”标签查看一下。

你有没有看到类似这样的记录: Routed: .*@qq.com -> qiyazhuang@gmail.com '主题在这里'

这里的“Routed”前缀表示这条消息触发了一个路由。如果你看到了这个,并且下一条日志记录的前缀是“Delivered”,那么这条消息很可能已经顺利送到了Gmail。如果你在收件箱里还是找不到这些消息,可以去看看Gmail的垃圾邮件文件夹。

免责声明:我在Mailgun支持团队工作。:)

撰写回答