python-3.x - 在 Python 3.4.3 中,如何使用 IMAP 协议(protocol)发送标志 'Seen'

标签 python-3.x email imap

  • 获取标记为“UNSEEN”的邮件列表
  • 阅读每封邮件
  • 留下我制造的标志“看见”。

  • 我想在我的电子邮件帐户中设置一个邮件标记“已查看”。
    我如何在 python 中设置“Seen”标志。

    你有什么主意吗?
    import imaplib
    
    emailConnection = imaplib.IMAP4_SSL() 
    emailConnection.login(id, password)
    
    emailConnection.select(configData['email_input_folder']) 
    
    result, data = emailConnection.uid('SEARCH', None, '(UNSEEN)')
    uids = data[0].split()
    for uid in uids:
        result, data = emailConnection.uid('fetch', uid, '(RFC822)') 
        # ------   data is manufactured.
        result = emailConnection.store(uid, '+FLAGS', '\\Seen')  # << Occured Exception
    

    在我的错误消息中是这样打印的。
    [DEBUG|imap.py:81]2017-02-24 21:43:57,921 > STORE command error: BAD [b'Error in IMAP command STORE: Invalid messageset'] 
    

    最佳答案

    您正在混合 UID 和序列集。

    如果您使用 UID SEARCHUID FETCH , 你需要使用 UID STORE :

    result = emailConnection.uid("STORE", uid, '+FLAGS', '\\Seen')
    

    关于python-3.x - 在 Python 3.4.3 中,如何使用 IMAP 协议(protocol)发送标志 'Seen',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42439401/

    相关文章:

    python - 避免以明文形式存储密码以通过 Python 进行 IMAP 访问

    c# - InterIMAP,在 C# 中查看未读 IMAP 邮件并下载附件

    c# - 通过 gmail SMTP 服务器 (SSL) 发送电子邮件

    iphone - iOS 将字典从一个 plist 导入到另一个 plist

    emacs - 如何在Gnus中自动订阅新的IMAP文件夹?

    python - OpenCV 校准相机裁剪错误

    java - Java Web 应用程序中的异步电子邮件处理

    python - 如何使用 scipy.optimize.minimize 修复推导条件的拟合

    python - 无法有效删除 ‘v’ 之前的字符串或删除 v 及之后的字符串

    json - Python 在读取 JSON 文件时抛出错误