我想实现* .epub-Files的全文搜索。因此,我分叉了 epub-full-text-search 模块(https://github.com/friedolinfoerder/epub-full-text-search)。 我会有很多电子书需要搜索,所以我希望能够一次只搜索一个特定的电子书。
我怎么能用搜索索引做到这一点。我编写了一个解决方案,允许搜索字段 filename (epub的唯一文件名)和 body (章节的内容),但这感觉不到喜欢这是正确的方法,性能也不理想。
以下是我使用search-index进行搜索的示例:
searchIndex.search({
query: [{
AND: [
{body: ['epub']},
{filename: ['accessible_epub_3']}
]
}]
});
有没有更好的方法来做到这一点。也许使用存储桶,类别和过滤器?
感谢您的帮助!
答案 0 :(得分:2)
搜索索引(epub-full-text-search所基于的)为每个与任何给定查询匹配的文档/项目返回一个搜索结果。我的猜测是你想知道epub文件中的哪个位置会受到影响。如果某个段落是一个足够好的搜索结果项,我会索引段落。每个段落都有一个唯一的book-key作为过滤器,也许可以引用它在epub文件中的位置(页面/百分比/等)。
免责声明:我正在开展搜索索引项目。