我希望有人能给我一些关于在 r 中导入和解析 .eml 文件的建议。我有一个包含大约 1000 个 .eml 文件的文件夹,其中包含文本,其中包括如下所示的条目:
返回路径:< fake.name@stuff.com>
我想做的是将所有这些文件导入到 r 中的 data.frame 或 data.table 中,并将电子邮件地址解析到单独的字段中。
我想我以前见过用文本文件和使用 grep 完成类似的事情。
任何提示将非常感激。
我从从 gmail 下载的 mbox 文件开始。将其分解为一堆 eml 格式的单独消息。然后从每个文件中取出我需要的行并将它们组装成一个数据框。
library(tm.plugin.mail)
mbf <- "mboxfile"
convert_mbox_eml(mbf, "emlfile2")
maildir <- "emlfile2"
mailfiles <- dir(maildir, full.names=TRUE)
readmsg <- function(fname) {
l <- readLines(fname)
subj <- grep("Subject: ", l, value=TRUE)
subj <- gsub("Subject: ", "", subj)
date <- grep("Date: ", l, value=TRUE)
date <- gsub("Date: ", "", date)
text1 <- tail(l, 3)[1]
text2 <- tail(l, 3)[2]
return(c(subj, date, text1, text2))
}
mdf <- do.call(rbind, lapply(mailfiles, readmsg))
Run Code Online (Sandbox Code Playgroud)