1.. 该代码的作用就是把Outlook“已删除邮件”文件夹中,所有的邮件打上“紫色类别”标签。如下图
2.. 代码如下:
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
m= outlook.Folders.Item('lishengXX@XX.com')
m=m.Folders.Item('已删除邮件')
messages2= m.Items
mail = messages2.GetFirst()
while mail:
print (mail.Categories) #看一下打之前的类别
mail.Categories="紫色类别" #打上紫色类别
print (mail.Categories) #看一下打之后的类别
mail=messages2.GetNext() #编列所有邮件
3.. 如果在运行代码前,鼠标未选中“已删除邮件”中的某个邮件,代码显示结果打标签成功,但是实际则无法成功打上标签,如下图:
代码运行结果:
实际Outlook中的情况(没有一封邮件打标签成功):
4.. 如果在运行代码前,鼠标选中“已删除邮件”中的某个邮件,则实际上只能这个邮件打标签成功,其他邮件仍然无法打上标签。如下图:
代码运行结果(同上)
实际Outlook中只有被鼠标选中的邮件打上了标签,其他的都没有打上标签。
按照代码的理解,应该把所有邮件都打上紫色类别标签,但是却遇到上面的情况,请大神帮忙看看,是哪里出了问题,跪谢!