[問題] mailR連不上gmail

看板R_Language作者 (小武)時間8年前 (2017/03/15 18:29), 編輯推噓1(103)
留言4則, 4人參與, 最新討論串1/1
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 我想用mailR這個套件,用我的gmail信箱寄信 [程式範例]: send.mail(from, to, subject, body, smtp = list(host.name = "smtp.gmail.com", port = 465, user.name="xxxx@gmail.com", passwd="xxxx", ssl=TRUE), authenticate = TRUE, send = TRUE) 結果出現錯誤訊息: org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.gmail.com:465 at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1410) at org.apache.commons.mail.Email.send(Email.java:1437) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at RJavaTools.invokeMethod(RJavaTools.java:386) Caused by: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.gmail.com, 465; timeout 60000; nested exception is: java.net.ConnectException: Connection timed out: connect at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2053) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:697) at javax.mail.Service.connect(Service.java:386) at javax.mail.Service.connect(Service.java:245) at javax.mail.Service.connect(Service.java:194) at javax.mail.Transport.send0(Transport.java:253) at javax.mail.Transport.send(Transport.java:124) at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1400) ... 6 more Caused by: java.net.ConnectException: Connection timed out: connect at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) at java.net.AbstractPlainSocketImpl.connect(Unknown Source) at java.net.PlainSocketImpl.connect(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at sun.security.ssl.SSLSocketImpl.connect(Unknown Source) at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:310) at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:215) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2019) ... 13 more NULL Error: EmailException (Java): Sending the email to the following server failed : smtp.gmail.com:465 我上網查了之後發現情況類似: http://stackoverflow.com/questions/37343074/error-in-sending-email-through-gmail-by-using-mailr 不過我已經把google mail的兩階段驗證 取消,也啟用了安全性較低的應用程式存取權 不過錯誤訊息還是一樣,請教版上大大,感謝 [關鍵字]: mailR send.mail -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.228.117 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1489573799.A.253.html

03/15 20:25, , 1F
用gmailr吧,中文有些小問題而已
03/15 20:25, 1F

03/15 20:59, , 2F
試試看sendmailR吧
03/15 20:59, 2F

03/16 08:55, , 3F
在send.mail()裡面多加 encoding="utf-8" 試試看?
03/16 08:55, 3F

04/08 01:52, , 4F
去google帳號設定「應用程式密碼」即可
04/08 01:52, 4F
文章代碼(AID): #1OoHUd9J (R_Language)
文章代碼(AID): #1OoHUd9J (R_Language)