使用Python获取通过 Gmail 帐户发送的最近发送的邮件详细信息
在本文中,我们将了解如何使用Python通过 Gmail 帐户获取固定数量的最近发送的电子邮件。
此实现中使用的库包括imaplib
、 email
。您必须通过进入您的 Gmail 帐户设置来手动启用 IMAP 访问。在此之后,只有您可以在不登录浏览器的情况下访问您的 Gmail 帐户。
在设置页面中,在运行脚本之前启用它。
算法 :
- 导入
imaplib
、email
、webbrowser
和os
模块。 - 与 Gmail 帐户建立 imap 连接。
- 实例化 Gmail 帐户的用户名和密码变量。
- 登录到 Gmail 帐户
- 选择已发送的邮件。
- 确定要检索的已发送电子邮件的数量 n。
- 迭代 n 封电子邮件并打印电子邮件的发件人和主题。
# import the modules
import imaplib
import email
from email.header import decode_header
import webbrowser
import os
# establish connection with Gmail
server ="imap.gmail.com"
imap = imaplib.IMAP4_SSL(server)
# intantiate the username and the password
username ="username@gmail.com"
password ="********"
# login into the gmail account
imap.login(username, password)
# select the e-mails
res, messages = imap.select('"[Gmail]/Sent Mail"')
# calculates the total number of sent messages
messages = int(messages[0])
# determine the number of e-mails to be fetched
n = 3
# iterating over the e-mails
for i in range(messages, messages - n, -1):
res, msg = imap.fetch(str(i), "(RFC822)")
for response in msg:
if isinstance(response, tuple):
msg = email.message_from_bytes(response[1])
# getting the sender's mail id
From = msg["From"]
# getting the subject of the sent mail
subject = msg["Subject"]
# printing the details
print("From : ", From)
print("subject : ", subject)
输出 :
输出