Python 解析PDF文件中表格数据(pdf to tables)
PDF文件表格样例
Python解析结果
Tika解析样例
1、TEXT格式
Tika tika = new Tika();
tika.setMaxStringLength(100 * 1024 * 1024);
try (InputStream stream = new FileInputStream(new File("600060_2018_zB.pdf"))) {
return tika.parseToString(stream);
}
Text格式解析结果
2、XHTML格式
ContentHandler handler = new ToXMLContentHandler();
AutoDetectParser parser = new AutoDetectParser();
Metadata metadata = new Metadata();
try (InputStream stream = new FileInputStream(new File("600060_2018_zB.pdf"))) {
parser.parse(stream, handler, metadata);
return handler.toString();
}
XHTML格式解析结果
解析PDF常用组件(PdfBox、iText、Tika等)都无法将表格数据解析成有规则的格式。解析后格式基本是TEXT、XHTML等导致处理表格数据变的非常复杂,基本需要全枚举加正则表达式才能处理个70-80%。有人说用自然语言处理与机器学习不知道效果怎么样。