Как использовать python для реализации функции корзины семейства почты

задняя часть Python

«Эта статья участвовала в приказе о созыве Haowen, нажмите, чтобы просмотреть:Двойные заявки на внутреннюю и внешнюю стороны, призовой фонд в 20 000 юаней ждет вас, чтобы бросить вызов!"

Привет всем, я Лекс, Лекс, который любит издеваться над Суперменом.

Области специализации: разработка на python, проникновение в сетевую безопасность, управление доменом Windows, архитектура Exchange.

Сегодняшняя тема: скрипты Python реализуют такие функции, как отправка электронных писем, добавление вложений в электронные письма, а также чтение и получение электронных писем.

Содержит полный скрипт, [рекомендуемая коллекция]

Сегодня я познакомлю вас с этим, не входя в интерфейс почтового ящика.

Функции отправки электронных писем, добавления вложений и получения электронных писем реализованы с помощью кода Python.

Как показано ниже: Используйте почтовый ящик NetEase 126 для демонстрации.

Вы также можете добавить милые фотографии младшей сестры в качестве вложений.

первый эффект

1. Настройки почтового ящика

Во-первых, вам нужно настроить электронную почту и получить код авторизации на стороне электронной почты.

1. Сначала войдите в почтовый ящик веб-версии 126.

2. Откройте «Настройки» — интерфейс конфигурации POP3/SMTP/IMAP.

3. Добавьте код авторизации

Во-вторых, python отправляет почту

1. Установите почтовый модуль

pip install py-emails

2. Вызвать модуль

Внедрить модуль почтового ящика для настройки получателя, отправителя, кода авторизации и другой информации.

#引入smtplib模块
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
 
#配置邮箱信息
sender = 'pacersby@126.com' #发件人的地址
password = 'XXXXXXXXXXXX' #此处是我们刚刚在邮箱中获取的授权码
receivers = ['wangsicong@126.com', '1029925144@qq.com'] #邮件接受方邮箱地址,可以配置多个,实现群发
 

3. Установите содержимое электронной почты

#邮件内容设置
message = MIMEText('你好呀,王思聪~~~','plain','utf-8')
#邮件标题设置      

message['Subject'] = '来自CSDN的问候' 

#发件人信息
message['From'] = sender

#收件人信息     
message['To'] = receivers[0]  
 
#通过授权码,登录邮箱,并发送邮件
try:
    server = smtplib.SMTP('smtp.126.com') #配置126邮箱的smtp服务器地址
    server.login(sender,password)
    server.sendmail(sender, receivers, message.as_string())
    print('发送成功')
    server.quit()
 
except smtplib.SMTPException as e:
    print('error',e) 

4. Добавьте вложения

Кроме того, когда мы отправляем электронные письма, нам часто нужно добавлять различные вложения. Python может сделать то же самое.

Таким образом, мы можем добавлять вложения в формате изображений, pdf, zip и т. д. через код.

#添加图片附件
imageFile = 'C:\\Users\\pacer\\Desktop\\img\\1.png'
imageApart = MIMEImage(open(imageFile, 'rb').read(), imageFile.split('.')[-1])
imageApart.add_header('Content-Disposition', 'attachment', filename=imageFile)

#添加pdf附件
pdfFile = 'C:\\Users\\pacer\\Desktop\\img\\1.pdf'
pdfApart = MIMEApplication(open(pdfFile, 'rb').read())
pdfApart.add_header('Content-Disposition', 'attachment', filename=pdfFile)

#添加压缩文件附件
zipFile = 'C:\\Users\\pacer\\Desktop\\img\\1.zip'
zipApart = MIMEApplication(open(zipFile, 'rb').read())
zipApart.add_header('Content-Disposition', 'attachment', filename=zipFile)

Три, питон читает почту

С помощью установленного нами кода авторизации войдите в учетную запись электронной почты, чтобы получить содержимое электронных писем, полученных учетной записью.

Сначала установите модуль zmail

pip install zmail

читать почту

server = zmail.server('pacersby@126.com','授权码')
mail = server.get_latest()
zmail.show(mail)

Эффект от получения почты следующий:

-------------------------
Subject  来自lex的python自动发送邮件
Id  4
From  pacersby@126.com
To  None
Date  2021-07-15 10:18:39+08:00
Content_text  ['来自lex的python自动发送邮件']
Content_html  []
Attachments  
1.Name:C:\\Users\\lex\\Desktop\\img\\1.jpg Size:205133 
2.Name:C:\\Users\\lex\\Desktop\\img\\1.pdf Size:434938 
3.Name:C:\\Users\\lex\\Desktop\\img\\1.zip Size:1201666