按照格雷格·撒切尔( Greg )对How to retrieve Outlook inbox emails using R RDCOMClient?的回答(接受答案),我编写了一些代码来搜索我的收件箱,并找到我每天收到的电子邮件报告。密码开始于-
library(RDCOMClient)
folderName = "Inbox"
OutApp = COMCreate("Outlook.Application")
outlookNameSpace = OutApp$GetNameSpace("MAPI")
folder = outlookNameSpace$Folders(1)$Folders(folderName)
emails = folder$Items这是在上周的工作,但系统通常在周末重新启动,现在这是不工作的,我不知道为什么。我在代码片段outlookNameSpace$Folders(1)$Folders(folderName)中的第二行到最后一行出现了一个错误-
<checkErrorInfo> 80020009
No support for InterfaceSupportsErrorInfo
checkErrorInfo -2147352567
Error: Exception occurred.然而,在试图排除故障的过程中,我偶然发现了Download attachment from an outlook email using R,我用它编写了-
library(RDCOMClient)
OutApp = COMCreate("Outlook.Application")
search = OutApp$AdvancedSearch("Inbox", "urn:schemas:httpmail:subject = 'Finding Memo - Specific Theme'")这似乎是可行的,因为我在做search$Results()$Count()时得到了正确的号码。
问题是我不能(或者不知道如何)在我的过程中使用第二种方法,因为电子邮件报告的主题的开头部分保持不变,而结尾则不断变化。第一种方法允许我在邮件主题上使用grepl()。
如果有人能帮助我理解导致第一个方法崩溃的原因,或者指导我修改第二个方法来使用grepl()
发布于 2018-11-05 18:59:28
虽然电子邮件报告的开头部分保持不变,但结尾仍在变化。
然后,您可以结合使用like和%:
library(RDCOMClient)
OutApp <- COMCreate("Outlook.Application")
search <- OutApp$AdvancedSearch("Inbox", "urn:schemas:httpmail:subject like 'Finding Memo%'")
while (search$Results()$Count() == 0) TRUE
for (x in seq_len(search$Results()$Count())) {
print(search$Results()$Item(x)$Subject())
}这上星期起作用了(.),现在不行了。(...)如果有人能帮我理解是什么导致了第一个方法的崩溃
因为它是不可复制的,而且你没有提供什么改变的信息,这将是困难的。
https://stackoverflow.com/questions/53157959
复制相似问题