从一个PDF中提取数据是简单的,但处理成千上万的表格填写文件需要坚实的自动化. Aspose.PDF.FormExporter Plugin for .NET 通过允许高容量的集合处理和向 CSV 或 Excel 文件提交表单数据来简化此任务.
引入
在今天的数据驱动的世界中,从PDF表格中提取信息是各种行业的常见要求,如金融、人力资源和客户服务。 手动重新输入来自成千上万的PDF数据不仅花费时间,而且容易出现错误。 Aspose.PDF.FormExporter Plugin 提供了一个强大的解决方案,通过自动化挖掘过程并将表单字段数据直接出口到 CSV 或 Excel 文件.
為什麼自動輸出 PDF 表格?
- 节省无数小时: 手动数据重新输入是错误的,缓慢的.
- 可实时分析: 即时集成客户、人力资源或金融数据.
- 功率工作流: 在 Excel 中与 BI 工具、报告或进一步处理集成.
Batch Input Setup: 为高容量提取做好准备
要启动包装出口过程,请遵循以下步骤:
- 直接输入: 将所有 PDF 表格放在一个单一文件夹中(例如.,
/Forms/Input/
). - 输出文件: 决定目的地文件—通常
.csv
或.xlsx
(Excel). - Plugin Initialization: 设置
FormExporter
以及行行操作的选项.
using Aspose.Pdf.Plugins;
using System.IO;
// Folder containing input PDF forms
dir string inputDir = "@C:\Forms\Input";
string[] pdfFiles = Directory.GetFiles(inputDir, "*.pdf");
// Output file path (CSV)
string outputCsv = "@C:\Forms\exported-data.csv";
// Create the exporter plugin and options
var exporter = new FormExporter();
var exportOptions = new FormExporterValuesToCsvOptions();
exportOptions.AddOutput(new FileDataSource(outputCsv));
Export Loop:从每个PDF中提取数据
接下来,通过输入目录中的每个 PDF 文件进行 iterate 并使用 FormExporter
:
foreach (var file in pdfFiles)
{
exportOptions.AddInput(new FileDataSource(file));
}
// Batch export all at once
dynamic resultContainer = exporter.Process(exportOptions);
Console.WriteLine($"Exported data from {pdfFiles.Length} PDFs to {outputCsv}");
提示: 出口的 CSV 将包含每个 PDF 的一个行,每个表格字段的列.
错误处理与自动化技巧
- 错误的字段: 如果 PDF 具有不一致的表格、审查和预验证结构.
- 破坏文件: 添加例外处理到登录并错过无法阅读的 PDF.
- 性能: 对于成千上万的PDF文件,将工作分成组件(例如,每次100个),然后将CSV合并起来.
- 文件名称: 登录 PDF 文件名的每个出口行可追踪.
先进的场景
探索先进的使用案例,如从多个文件夹出口到Excel或处理文件:
- 出口到 Excel: 使用
FormExporterValuesToExcelOptions
為.xlsx
出口. - 从多个文件夹的过程: 重复扫描子,并将结果结合起来.
- 将数据与其他来源相结合: 出口后,将 CSV 数据连接到 SQL 或分析管道.
使用案例和最佳实践
将自动化技术应用到现实世界场景:
- 数据分析: 用于调查、登机或反馈表格的自动提取.
- 操作: 集体出口发票、人力资源表格或遵守报告.
- 档案: 输出存储数据格式,然后将 PDF 编辑/优化为 优化者.
FAQ
**Q:我可以从扫描的PDF中提取表格数据吗?**答:仅支持具有互动(AcroForm/XFA)字段的PDF。 对于扫描图像,首先运行 OCR 然后使用文本提取插件.
**问:如何有效处理数百个或数千个文件?**答:将文件集成组,如果可能的话使用平行处理,并始终记录未出口的文件的错误.