我正在使用Tika从不同类型的文件中提取文本。所以我使用''AutoDetectParser``解析器,但看起来它的注册表是空的。我有以下代码,它返回一个空列表(第三行和第四行)。
Parser parser = new AutoDetectParser();
ParseContext con = new ParseContext();
System.out.println(parser.getSupportedTypes(con)));
System.out.println(" parsers "+parser.getParsers());
如何正确配置AutoDetectParser,它可以调用正确的Parser?
答案 0 :(得分:2)
对答案进行评论 - 您通常不需要!只要你有在运行时 Tika Core和Tika Parsers罐子以及它们所需的依赖关系,那么默认的TikaConfig object将自动检测并自动加载它们
如果由于某种原因你在运行时错过了一些罐子,或者你一直在搞乱重新包装Tika并丢失一些服务文件,那么你将要按照{{{ 3}},特别是在Apache Tika troubleshooting wiki和Identifying what Parsers your Tika install supports
附近(如果你想做非标准的事情,比如排除某些解析器,或者强制使用某些解析器,或者让解析器处理非标准的mime类型,那么你需要一个自定义的Tika Config。通常你会这样做对于tika-config.xml
文件,请参阅Identifying if any Parsers failed to be loaded了解您可以执行的操作)