如何解决R语言emayili包Request failed after 5 attempts报错
emayili发送Gmail报错修复方案
- 修正Gmail认证配置
谷歌早已停止对「低安全性应用」的登录支持,你当前使用的低安全性应用密码已失效。需要先为你的谷歌账号开启两步验证,之后生成16位无空格的应用专用密码,将server函数中的password参数替换为该专用密码即可。 - 补充SMTP连接加密参数
465为SSL加密端口,需要显式指定ssl = TRUE参数才能正常建立连接,修改后的配置代码如下:smtp <- server( host = "smtp.gmail.com", port = 465, username = "xxx@gmail.com", password = "替换为你的应用专用密码", ssl = TRUE ) - 调整重试与超时配置
默认5次重试、短超时配置容易在网络波动时触发报错,可以手动调大参数阈值:smtp <- server( host = "smtp.gmail.com", port = 465, username = "xxx@gmail.com", password = "替换为你的应用专用密码", ssl = TRUE, retry = 10, timeout = 20 ) - 排查本地网络限制
检查本地防火墙、安全软件是否拦截了R进程对465端口的访问,如果你当前使用代理网络,可暂时关闭代理后重试,或为R配置对应代理规则。 - 开启日志定位具体问题
调用发送函数时添加verbose = TRUE参数打印完整连接日志,可定位到具体是握手、认证还是发送阶段出现异常:smtp(to_send, verbose = TRUE)
内容的提问来源于stack exchange,提问作者tyk
相关产品推荐
相关产品推荐

