#report #power #parser #extract #file #page #settings

pbix

Power BI 报告文件 (.pbix) 解析库

1 个不稳定版本

0.1.0 2023年4月11日

#65 in #power

MIT/Apache

11KB
184 行代码(不含注释)

用 Rust 实现的 Power BI 报告文件 (.pbix) 解析器。提取报告设置、页面结构和可视化。

pbix 是一个 crate,允许您解析和提取 Power BI 报告文件 (.pbix) 的元数据。

解析文件

您可以使用 pbix::parse_file(path: AsRef<Path>) 解析给定路径的 Power BI 报告文件

match pbix::parse_file("Example.pbix") {
    Ok(report) => println!("Parsed {} pages from the report file!", report.pages.len()),
    Err(e) => eprintln!("Failed to parse report: {e}"),
};

from_bytes

或者,您可以使用 pbix::from_bytes(bytes: &[u8]) 解析报告文件,如果您想处理字节(而不是文件名)。

let bytes = ...;

match pbix::from_bytes(&bytes) {
    Ok(report) => println!("Parsed {} pages from the report file!", report.pages.len()),
    Err(e) => eprintln!("Failed to parse report: {e}"),
};

功能

以下是关于此 crate 提供的不同功能标志的文档。

rayon

此功能使用 rayon crate 在报告数据解析和转换中引入并行性。

您可以通过将其包含在您的 Cargo.toml 中来启用此功能:不需要额外的配置或代码!

[dependencies]
pbix = { version = ..., features = ["rayon"] }

对来自微软示例的 Power BI 报告的基本测试表明,使用此功能时解析时间提高了约 15%。

依赖关系

~1.4–2.6MB
~54K SLoC