
利用R可以方便的创建数据报表。MailR可以在R编程环境中,利用SMTP服务器将文件发送出去。
: https://github.com/rpremraj/mailR
1.安装MailR包
install.packages("devtools", dep = T) library(devtools) install_github("mailR", "rpremraj") library(mailR)2. MailR的使用MailR的使用
MailR包需要rJava等包的支持。在安装完毕后,载入MailR包时出现了以下错误报警:
libjvm.so: cannot open shared object file: No such file or directory
处理过程如下:
sudo R CMD javareconf # 这个命令我也不清楚干啥,没查 rstudio-server stop # 停止rstudio服务 sudo ln -s /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so /opt/microsoft/ropen/3.5.1/lib64/R/lib/libjvm.so #创建一个软连接 rstudio-server start #恢复rstudio服务
2.MailR包的使用
2.1 创建带附件的UTF-8格式的html邮件
send.mail(from = "sender@gmail.com", to = c("recipient1@gmail.com", "recipient2@gmail.com"), subject = "Subject of the email", body = body = "<html>The apache logo - <img src=\"http://www.apache.org/images/asf_logo_wide.gif\"></html>", smtp = list(host.name = "smtp.gmail.com", port = 465, user.name = "gmail_username", passwd = "password", ssl = TRUE), authenticate = TRUE, send = TRUE, attach.files = c("./download.log", "upload.log"), file.names = c("Download log", "Upload log"), # optional parameter file.descriptions = c("Description for download log", "Description for upload log"))
Body部分,也可以直接采用html文件引用。
body = "path.to.local.html.file", html = TRUE, inline = TRUE

2.2 smtp服务器的设定
因为使用的是gmail的smtp服务器。一定要把账号设置允许安全性较低的应用访问帐号。
位置:Google账号->安全性->安全性较低的应用的访问权限
相关链接:http://www.google.com/settings/security/lesssecureapps