也许今天我脑子不好,但我突然无法弄清楚如何用ruby的net/imap库阅读电子邮件。我已经呆了好几个小时了。我在google中输入了几个“ruby imap read body”的变体,并且探索了很多网站。他们都有如何拉附件,同步电子邮件服务器,与Gmail等工作的例子...一些(如chilkat)实际上是共享软件库,为您做到这一点。我已经看过net/imap文档,虽然有几个例子可以完成除了阅读正文的所有内容。如何使用ruby的net/imap库读取电子邮件的正文文本?
我已经使用net/imap之前,但我只需要将收件箱中的附件下拉到目录。我问过#ruby和#rubyonrails无济于事 - 没有人能弄明白。
imap=Net::IMAP.new('mail.xks.com') #of course these are not real
imap.login('web1_xk3','pxx2006')
imap.select('INBOX')
imap.search(["SENTSINCE",(Time.now-1.day).strftime("%d-%b-%Y")]).each do |msgid|
body = imap.fetch(msgid,"BODY")[0].attr["BODY"]
##insert code for getting the text from the body here
##body.class is BodyTypeText
end
P.S.虽然我做使代码中的积极支持的参考,这是SANS护栏,使意味着没有行动的邮件
`mail` gem是否对`xoauth`有任何依赖关系,因为当我遵循你的代码时,它会抛出错误'unknown auth type - “XOAUTH2”`。我正在做`require'net/imap'`和`require mail`,然后你的代码 – Jashwant 2012-10-24 11:05:13