在Ruby Net :: IMAP中选择邮箱“发送邮件”或“所有邮件”
发布时间:2020-12-16 20:12:03 所属栏目:百科 来源:网络整理
导读:我试图在 Ruby中使用Net :: IMAP来搜索我发送的所有邮件,但是我无法选择INBOX以外的任何东西. imap.select('INBOX') 工作正常,但 imap.select('Mail/sent-mail') 如Net :: IMAP文档中所示,给我“未知的邮箱”. 顺便说一句,这是用于gmail. 我也尝试在我的imap
我试图在
Ruby中使用Net :: IMAP来搜索我发送的所有邮件,但是我无法选择INBOX以外的任何东西.
imap.select('INBOX') 工作正常,但 imap.select('Mail/sent-mail') 如Net :: IMAP文档中所示,给我“未知的邮箱”. 顺便说一句,这是用于gmail. 我也尝试在我的imap.search()中添加“in”,“anywhere”,但没有解析. 当前代码: imap.select('INBOX') now = Time.now.localtime - 1209600 #two weeks since = now.day.to_s() + "-" + Date::MONTHNAMES[now.month] + "-" + now.year.to_s() puts "since" puts since begin mail_ids = imap.search(["FROM","me","SINCE",since]) mail_ids.each do |id| text = imap.fetch(id,'BODY[HEADER.FIELDS (SUBJECT)]').to_s.split("{").second.chop puts text end end 解决方法
“发送的邮件”文件夹将不同于提供商. Gmail的“已发邮件”文件夹命名为“[Gmail] /已发邮件”.选择它,它将工作.
imap.select('[Gmail]/Sent Mail') FYI,Gmail的系统文件夹如下: > INBOX> [Gmail] /所有邮件> [Gmail] /草稿> [Gmail] /已发邮件> [Gmail] /垃圾邮件> [Gmail] /已加星标> [Gmail] /垃圾桶 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |