2016-02-16 63 views
0

我需要解析從unix maildir讀取的多部分電子郵件文件。 你能推薦一個合適的圖書館來做這件事嗎?Golang:解析來自maildir的多部分電子郵件

電子郵件通過IMAP被吸入並轉儲到maildir。 我需要解析這些電子郵件文件並提取所有部分,包括標題,base64附件,html部分和明文部分。

感謝

編輯

我知道我可以搜索關鍵字和內容庫,但我也想對質量,如果可能經歷了一些意見。

我可以處理實際的maildir和拾取郵件文件。我關心的是多部分電子郵件的解析(作爲字符串提供)並提取單個部分。

+0

https://godoc.org/?q=maildir – kostya

+0

所有這些圖書館專門處理與maildir - 不與多部分電子郵件解析。感謝您的幫助,雖然... –

+0

我自己並沒有使用這些庫,但可能來自標準庫的net/mail,mime,mime/multipart包提供了足夠的功能。 – kostya

回答

0

這是我的例子:缺少的部分是提取附件。請讓我知道,如果你想通的那部分......被抓我的頭,以提取現周附件...

import (
    "fmt" 
    "io/ioutil" 
    "net/mail" 
) 

func extractEmail(mail *mail.Message){ 
    header := mail.Header 

    fmt.Println(header.Get("Date")) 
    fmt.Println(header.Get("From")) 
    fmt.Println(header.Get("To")) 
    fmt.Println(header.Get("cc")) 
    fmt.Println(header.Get("bcc")) 
    fmt.Println(header.Get("Subject")) 

    body, err := ioutil.ReadAll(mail.Body) 
    if err != nil { 
     checkErr(err, "Reading Body") 
    } 

    fmt.Println(body) 
}