Python - 获取邮件的日期时间 - Gmail

时间:2018-05-05 07:44:03

标签: python gmail imaplib

我尝试使用python从Gmail下载附件以获取特定关键字,代码如下:

def read_email_from_gmail():
mail = imaplib.IMAP4_SSL(imap_url)
mail.login(user, password)
mail.select('"[Gmail]/All Mail"')
print("Login into Mailbox")
result, data = mail.search(None, '(SUBJECT "Contract note")')
count = 0
for num in data[0].split():
    result, data = mail.fetch(num, "(RFC822)")
    raw_email_string = data[0][1].decode('utf-8')
    msg = email.message_from_string(raw_email_string)
    for part in msg.walk():
        if part.get_content_type() == "text/plain":
            print(part.get_payload(decode=True))

        if part.get_content_maintype() == 'multipart':
            continue
        if part.get('Content-Disposition') is None:
            continue
        fileName = part.get_filename()
        print(part.get_)
        fileName = fileName+str(count)+str('.pdf')
        count = count + 1
        if bool(fileName):
            filePath = os.path.join(attachment_dir, fileName)
            with open(filePath, 'wb') as e:
                e.write(part.get_payload(decode=True))

代码工作正常,它正在下载附件。问题是邮件中的所有附件都以相同的名称关闭,因此在上面的代码中我添加了一个计数并附加了它。但是将来要找到合适的文件会很困难。

注意: - 我曾经每天收到邮件

有人可以指导我如何获取电子邮件的日期,以便我将其附加到文件名而不是计数。

1 个答案:

答案 0 :(得分:1)

我们可以使用

获取电子邮件的日期

msg ['日期']