Elastica搜索如何从索引的pdf /附件中检索纯文本结果

时间:2013-04-19 19:54:20

标签: php symfony elasticsearch elastica

如何使用FOS Elastica Bundle从索引的pdf文件内容中获取纯文本搜索结果?

我正在使用
ElasticSearch with Attachment-Mapper插件
弹性弯曲
FOS Elastica Bundle,Symfony2上的Doctrine

到目前为止,我已经能够启动并运行映射器附件了。 pdf文件内容使用此https://github.com/FriendsOfSymfony/FOSElasticaBundle/issues/96作为指南编制索引 方法摘要,所以你不必阅读整个github帖子:

1)使用“getEncodedFile”方法创建“document”实体。注意:我只抓取此方法中的文件内容。我不相信有必要在这里对base64进行编码,因为这会发生在后面(我很确定Elastica Document类会这样做)。

2)然后我设置了config.yml:

      types: 
          document:  
                mappings:  
                    id: ~  
                    encodedFile:  
                        type: attachment
                persistence:
                    driver: orm 
                    model: MyBundle\Entity\Document
                    provider: ~
                    finder: ~
                    listener: ~  

搜索功能返回正确的实体。当我var_dump混合结果时,我得到了正确的实体,包括所有的字段。如果我添加“setHighlight”方法,则没有任何变化。 setHighlight方法不返回有关“encodedFile”字段的任何内容。我确实让setHighlight与其他领域合作。

如何从索引的base64编码数据中提取纯文本搜索结果(带有某些上下文)?

根据这个堆叠帖子Best practices for searchable archive of thousands of documents (pdf and/or xml),似乎有可能。

提前致谢

更新

所以我屈服了。我最终使用XPDF来提取和索引每个pdf文档的文本。然后我就像正常一样运行查询。

0 个答案:

没有答案