栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从Python脚本下载Outlook附件?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从Python脚本下载Outlook附件?

复制此代码时,出现错误:

连接=无^ IndentationError:应缩进的块

然后,当我缩进代码时,

class FetchEmail():    connection = None    error = None    mail_server = "imap.gmail.com"    username = "dummyoffers@gmail.com"    password = "opennepo"    self.save_attachment(self, msg, download_folder)

我收到另一个错误:

self.save_attachment(self,msg,download_folder)NameError:未定义名称“ self”

import emailimport imaplibimport osclass FetchEmail():connection = Noneerror = Nonemail_server="host_name"username="outlook_username"password="password"self.save_attachment(self,msg,download_folder)def __init__(self, mail_server, username, password):    self.connection = imaplib.IMAP4_SSL(mail_server)    self.connection.login(username, password)    self.connection.select(readonly=False) # so we can mark mails as readdef close_connection(self):    """    Close the connection to the IMAP server    """    self.connection.close()def save_attachment(self, msg, download_folder="/tmp"):    """    Given a message, save its attachments to the specified    download folder (default is /tmp)    return: file path to attachment    """    att_path = "No attachment found."    for part in msg.walk():        if part.get_content_maintype() == 'multipart': continue        if part.get('Content-Disposition') is None: continue        filename = part.get_filename()        att_path = os.path.join(download_folder, filename)        if not os.path.isfile(att_path): fp = open(att_path, 'wb') fp.write(part.get_payload(depre=True)) fp.close()    return att_pathdef fetch_unread_messages(self):    """    Retrieve unread messages    """    emails = []    (result, messages) = self.connection.search(None, 'UnSeen')    if result == "OK":        for message in messages[0].split(' '): try:      ret, data = self.connection.fetch(message,'(RFC822)') except:     print "No new emails to read."     self.close_connection()     exit() msg = email.message_from_string(data[0][1]) if isinstance(msg, str) == False:     emails.append(msg) response, data = self.connection.store(message, '+FLAGS','\Seen')        return emails    self.error = "Failed to retreive emails."    return emails

上面的代码可以让我下载附件,希望对任何人都有帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/646454.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号