本文目录导读:

是的,脚本完全可以自动发送邮件,这是非常常见的自动化需求,具体实现方式取决于你使用的编程语言和邮件服务。
以下是几种主流方式:
Python (最常用)
使用 smtplib 和 email 库:
import smtplib
from email.mime.text import MIMEText
# 配置
smtp_server = "smtp.gmail.com"
smtp_port = 587
sender = "your_email@gmail.com"
password = "your_app_password" # 建议用应用专用密码
# 创建邮件
msg = MIMEText("邮件正文")
msg['Subject'] = "主题"
msg['From'] = sender
msg['To'] = "recipient@example.com"
# 发送
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.starttls()
server.login(sender, password)
server.send_message(msg)
需注意:Gmail等需要开启“允许不安全应用”或使用应用专用密码。
Shell脚本 (Linux/Mac)
使用 mail 或 sendmail 命令:
echo "邮件正文" | mail -s "主题" recipient@example.com
Node.js (JavaScript)
使用 nodemailer 库:
const nodemailer = require('nodemailer');
let transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'your_email@gmail.com',
pass: 'your_password'
}
});
transporter.sendMail({
from: 'your_email@gmail.com',
to: 'recipient@example.com',
subject: '主题',
text: '正文'
});
PowerShell (Windows)
Send-MailMessage -To "recipient@example.com" -Subject "主题" -Body "正文" -SmtpServer "smtp.office365.com" -From "your_email@outlook.com"
常见应用场景:
- 定时报表发送(如每天9点发送销售数据)
- 系统告警通知(服务器崩溃时自动发邮件)
- 自动化工作流(表单提交后自动回复确认邮件)
- 批量发送(如节日祝福、通知)
注意事项:
- 安全性:不要在脚本中硬编码密码,使用环境变量或密钥管理服务
- 限制:多数邮件服务有发送频率限制(如Gmail每天约500封)
- 被标记为垃圾邮件合规,配置SPF/DKIM/DMARC记录
- 错误处理:添加重试机制和日志记录
如果你有具体的编程语言或使用场景,我可以提供更详细的代码示例。