请用Python写出一个自动打包自己并发送给邮箱联系人的程序
时间: 2023-01-11 10:55:36 浏览: 118
可以使用 Python 的 `zipfile` 模块来实现打包文件的操作。你可以使用 `smtplib` 和 `email` 模块来发送电子邮件。具体的,你可以这样做:
1. 导入所需的模块:
```
import zipfile
import smtplib
import email
from email import encoders
from email.mime.base import MIMEBase
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
```
2. 设置发送邮件所需的变量,如发件人地址、密码、收件人地址、邮件主题等:
```
from_addr = 'your_email@example.com'
password = 'your_email_password'
to_addr = 'recipient@example.com'
subject = 'Test Email'
```
3. 创建一个带有附件的 MIME 邮件:
```
msg = MIMEMultipart()
msg['From'] = from_addr
msg['To'] = to_addr
msg['Subject'] = subject
```
4. 打开要作为附件发送的文件,并将其加入邮件中:
```
with open('myfile.zip', 'rb') as f:
# 设置附件的 MIME 和文件名,这里是 zip 类型
mime = MIMEBase('application', 'zip', Name='myfile.zip')
# 加上必要的头信息
mime.add_header('Content-Disposition', 'attachment', filename='myfile.zip')
mime.add_header('Content-ID', '<0>')
mime.add_header('X-Attachment-Id', '0')
# 读入附件内容并格式化
mime.set_payload(f.read())
# 编码用于邮件传输的内容
encoders.encode_base64(mime)
# 加到MIMEMultipart:
msg.attach(mime)
```
5. 使用 `smtplib` 发送邮件:
```
server = smtplib.SMTP
阅读全文