2011-12-13 90 views
4

有没有可解析msg或eml文件的库?我写了一个脚本,它在转换为txt文件后解析电子邮件,但我找不到允许我将gui中的电子邮件拖放到文件夹中作为txt文件的电子邮件客户端(如果有人知道这一点我很想知道!)使用Python解析msg/eml文件2.7

从Outlook拖放创建.msg文件,Thunderbird创建.eml文件。有谁知道会解析这些文件的库?

+1

貌似你可以在python中打开.eml,我只需要将标题格式化 –

回答

7

对于* .eml文件,您可以使用标准库中的email module。您将需要使用email.parser中的解析器来创建消息对象。

1
`from mailparser import MailParser 

parser = MailParser() 
parser.parse_from_file(f) 
parser.parse_from_string(raw_mail) 
parser.body 
parser.headers 
parser.message_id 
parser.to_ 
parser.from_ 
parser.subject 
parser.text_plain_list: only text plain mail parts in a list 
parser.attachments_list: list of all attachments 
parser.date_mail 
parser.parsed_mail_obj: tokenized mail in a object 
parser.parsed_mail_json: tokenized mail in a JSON 
parser.defects: defect RFC not compliance 
parser.defects_category: only defects categories 
parser.has_defects 
parser.anomalies 
parser.has_anomalies 
parser.get_server_ipaddress(trust="my_server_mail_trust")`