提问人:BrA 提问时间:9/13/2023 更新时间:9/14/2023 访问量:31
Python win32com outlook 不断删除错误的附件
Python win32com outlook keeps removing the wrong attachment
问:
我有一个脚本,它应该根据特定类型的附件(比如说 .PDF)的存在来转发某些电子邮件。 我已经让它正确排序电子邮件,并且转发是完美的。唯一的问题是,当我尝试删除所述附件时,它会删除另一个附件。 我正在使用相同的 for 循环来识别附件,它确实可以识别我要删除的附件,但由于某种原因,索引 (???) 不再相同,它删除了不同的附件。 另外,我已经发现,当它删除时,它会自动更新附件索引
new_mail = message.Forward()
new_mail.To = '[email protected]'
attach_index=1
for attachment in attachments:
print("i can print the index correctly, and all the filename characteristic to select the one i want)
if ***condition****:
print('to remove...')
new_mail.Attachments.Remove(attach_index)
else:
attach_index = attach_index+1
new_mail.Send()
在这种特殊情况下,我有一封电子邮件,其中包含 .pdf 、.txt 和签名中的图像,python 也将其识别为附件。我不停地输出“删除......”在正确的一个上,但删除另一个。 我做错了什么?请帮忙
答:
0赞
Dmitry Streblechenko
9/14/2023
#1
使用 instead of - 这样你就不必处理任何索引了。Attachment.Delete
Attachments.Remove(index)
评论
1赞
BrA
9/15/2023
谢谢。起初,我注意到我的附件来自原始邮件,然后将其更改为新邮件。这在一定程度上起到了作用。但后来我发现了 Delete 并成功使用它。
评论