#message-parser #outlook #msg #parser #ole

msg_parser

Outlook电子邮件消息(.msg)解析器

2个版本

0.1.1 2022年9月10日
0.1.0 2021年3月14日

#285 in 电子邮件

每月26次下载

MIT许可

4MB
2.5K SLoC

包含 (Cab文件,2MB) data/unicode.msg,(Cab文件,1MB) data/test_email.msg,(Cab文件,730KB) data/test_email_1.msg,(Cab文件,1MB) data/test_email_2.msg,(Cab文件,195KB) data/attachment.msg,(Cab文件,220KB) data/test_email_3.msg 以及更多

Outlook电子邮件消息(.msg)解析器。

Crates.io docs.rs Build Status

一个简单的解析器和读取器,用于反序列化给定的Outlook电子邮件消息(.msg)文件。

用法

将此内容添加到您的Cargo.toml文件

[dependencies]
msg_parser = "0.1.1"

示例

use msg_parser::Outlook;

fn main() {
    // Create Outlook object
    let outlook = Outlook::from_path("data/test_email.msg").unwrap();

    // Flush as json string
    let json_string = outlook.to_json();

    println!("{:#?}", outlook);
    
    println!();
    println!("json_string ---");
    println!("{:?}", json_string);
}

要求

  • Rust 1.42+

运行给定示例

$ cargo run --example parse-email
   Compiling msg_parser v0.1.0 (msg-parser)
    Finished dev [optimized + debuginfo] target(s) in 3.66s
     Running `target/debug/examples/parse-email`
Outlook {
    headers: TransportHeaders {
        content_type: "",
        date: "",
        message_id: "",
        reply_to: "",
    },
    sender: Person {
        name: "",
        email: "",
    },
    ...<clip>
}

运行测试

cargo t --verbose

构建发布版

cargo b --release

贡献

请随意提交pull请求以贡献/增强/添加更多功能/修复bug。


许可:MIT

依赖关系

~2.7–4.5MB
~85K SLoC