python发送邮件附件_python发送邮件和附件

该博客介绍了如何使用Python的smtplib和email库发送邮件,包括基本的邮件发送和带有附件的邮件。示例代码详细展示了设置发件人、收件人、邮件服务器、主题、内容以及附件的步骤,并提供了命令行参数的使用方法。
部署运行你感兴趣的模型镜像

发送邮件的时候,需要发送人,收件人,和一台邮件服务器,这里使用python发送一个邮件,主要需要引入smtplib和email库。

下面是源码,粘贴即可用:

#!/usr/bin/env python3

# coding: utf-8

import smtplib

import time

import sys

from email.mime.text import MIMEText

from email.mime.multipart import MIMEMultipart

# 发送邮件

def SendMail(mail_list, subject, content):

from_mail = '这里填入发件人邮箱'

temp_msg = '武松申请了车费报销'

msg = MIMEText('

' + temp_msg + '

同意, 不同意
', 'html','utf-8')

msg['Subject'] = subject

msg['From'] = from_mail

msg['To'] = mail_list

msg['date'] = time.strftime('%a, %d %b %Y %H:%M:%S %z')

smtp_server = '这里填入邮件服务器的地址'

s = smtplib.SMTP(smtp_server)

s.login("填入登录邮件服务器的邮箱", "填入邮箱密码")

s.sendmail(from_mail, mail_list.split(","), msg.as_string())

s.quit()

# 发送邮件带附件

def SendMailWithAttachment(mail_list, subject, content, attachment):

from_mail = '这里填入发件人邮箱'

msg = MIMEMultipart()

msg['Subject'] = subject

msg['From'] = from_mail

msg['To'] = mail_list

msg['date'] = time.strftime('%a, %d %b %Y %H:%M:%S %z')

msg.attach(MIMEText(content, 'html', 'utf-8'))

att = MIMEText(open(attachment, 'rb').read(), 'base64', 'utf8')

att["Content-Type"] = 'application/octet-stream'

att["Content-Disposition"] = 'attachment; filename="%s"' % attachment

msg.attach(att)

smtp_server = '这里填入邮件服务器的地址'

s = smtplib.SMTP(smtp_server)

s.login("填入登录邮件服务器的邮箱", "填入邮箱密码")

s.sendmail(from_mail, mail_list.split(","), msg.as_string())

s.quit()

if __name__ == '__main__':

if len(sys.argv) < 4:

print('Usage:', sys.argv[0], ' mail_list subject content [attachment]')

sys.exit(1)

content = ""

if len(sys.argv) == 4:

SendMail(sys.argv[1], sys.argv[2], content)

else:

SendMailWithAttachment(sys.argv[1], sys.argv[2], content, sys.argv[4])

你需要修改的地方是:

from_mail:发件人信息

temp_msg:发送的内容

smtp_server:邮件服务器地址

s.login:邮件服务器登录名和密码

命令行发送:

python3 sendmail.py '772654204@qq.com' 'python send mail' 'leran is fun'

显示效果:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值