電子メール メッセージをプレーン テキストで取得し、それを解析して Clojure プロジェクトで使用できるようにする方法を探しています。結果として得られるデータ構造により、送信者、件名、本文、および添付ファイルをすばやく取得できるはずです。
これに似た質問がありますが、Javaでは:
私が見つけたほとんどのライブラリは、メール送信のみをサポートしており、必ずしも解析をサポートしているわけではありません。
電子メール メッセージをプレーン テキストで取得し、それを解析して Clojure プロジェクトで使用できるようにする方法を探しています。結果として得られるデータ構造により、送信者、件名、本文、および添付ファイルをすばやく取得できるはずです。
これに似た質問がありますが、Javaでは:
私が見つけたほとんどのライブラリは、メール送信のみをサポートしており、必ずしも解析をサポートしているわけではありません。
誰も答えなかったので、多分私はそうすべきです。これは、電子メール ファイルを読み込んでfrom
フィールド (最初のアドレス) を出力する非常に簡単な例です。
(ns something.views.welcome
(:use [noir.core :only [defpage]]
[clojure.contrib.java-utils]
[clojure.java.io :only [input-stream]])
(:import
(javax.mail Session)
(javax.mail.internet MimeMessage)
))
(def session
(Session/getDefaultInstance
(as-properties [["mail.store.protocol" "imaps"]])))
(def email "email.txt")
(defn get-message [filename]
(bean (MimeMessage. session (input-stream filename))))
(defn get-from [message]
(.toString (first (:from message))))
(println (get-from (get-message email)))