【问题标题】:update categories in emails using python使用 python 更新电子邮件中的类别
【发布时间】:2018-02-06 12:32:42
【问题描述】:

我正在尝试使用以下代码更新其中一个数据框中可用的电子邮件类别。

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
messages = inbox.Items

i = 0

for message in messages:
       try: 
        message.Categories = output.iat[i,2]
       except:
           message.Categories = 'No Category'
       i = i + 1  

以下脚本用于将更新的电子邮件从收件箱移动到另一个文件夹,然后删除到收件箱

donebox = outlook.GetDefaultFolder(6).Folders[20]

def delay(time):
    for j in range(time):
        j=j+1


i = 0

while (messages.Count > 0):
    print(i,messages.Count)
    message = messages.GetLast()
    message.Move(donebox)
    delay(1000000)
    i = i + 1


messages = donebox.Items

i = 0

while (messages.Count > 0):
    print(i,messages.Count)
    message = messages.GetLast()
    message.Move(inbox)
    delay(1000000)
    i = i + 1

在 Outlook 更新后的电子邮件输出数据框中的类别仅在选择电子邮件后才可见。是否有任何选项可以刷新 Outlook 和类别将自动更新。请指教。

【问题讨论】:

  • 我找到了一些解决方案,但不确定它是否更有效,我已将电子邮件从收件箱移动到另一个文件夹,然后我将这些电子邮件删除到原始收件箱文件夹,然后我能够查看更改电子邮件中的类别。我在原始问题中添加了其他脚本。

标签: python outlook


【解决方案1】:

对于无法通过 Python 保存更改未选择邮件类别属性的每个人:

mail.Categories='Red category'
mail.Save()

【讨论】:

    【解决方案2】:

    它对我有用!

    import win32com.client
    from win32com.client import Dispatch    
    
    outlook=win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
    folder = outlook.Folders.Item("Inbox")
    
    messages = folder.Items
    
    for i in range(messages.Count):
        messages[i].GetInspector()
        messages[i].Categories = 'Purple Category'
        messages[i].Save()
    

    【讨论】:

      【解决方案3】:

      如果只需要为每封电子邮件分配一个类别,dmitrii.kotenko 提供了解决方案。

      如果您需要附加多个类别,请将类别作为逗号分隔的字符串传递

      mail.Categories = "category1, category2, category3"
      mail.Save()
      

      【讨论】:

        猜你喜欢
        • 2018-08-11
        • 1970-01-01
        • 2011-08-24
        • 1970-01-01
        • 2018-11-02
        • 2013-10-05
        • 1970-01-01
        • 2017-12-07
        • 1970-01-01
        相关资源
        最近更新 更多