我想用clojure解析来自我的IMAP收件箱的邮件。
我知道有clojure-mail库,但我没有gmail帐户。谢谢!
答案 0 :(得分:5)
Apache Commons IMAP客户端库是一个合理的选择。 their example program的核心在Clojure的20行以下被轻易复制,如果一个人不为失败处理而烦恼:
(ns mail-client.core
(:import [org.apache.commons.net PrintCommandListener]
[org.apache.commons.net.imap IMAPClient]))
(defn get-mail [server username password]
(doto (IMAPClient.)
(.setDefaultTimeout 60000)
(.addProtocolCommandListener (PrintCommandListener. System/out true))
(.connect server)
(.login username password)
(.setSoTimeout 6000)
(.capability)
(.select "inbox")
(.examine "inbox")
(.status "inbox" (into-array String ["MESSAGES"]))
(.logout)
(.disconnect)))