咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

简单两步,实现本地资料库全文搜索。

按说微信读书、得到、掌阅都支持全文搜索,能应付大多数场景。但是毕竟更多的书是软件上没有的,好在zlib基本都能找到,实在找不到,全国图书馆参考联盟也能查遗补漏。

但问题是,电子书越攒越多,动辄几百寄,有时候主题阅读,或者只能记得只言片语时,想找到出处,没有全文搜索,还真是难办。

可即便如此,也一直没有动在本地建立全文搜索的念头。一是笔记本太老了,十几年前的配置,不想折腾它。另一方面,现在不是云时代嘛,能用云服务,本地就先往后稍一稍。

最早存在网盘上,搜索的时候发现,很多文档里明明有的字,却搜不到,后来知道,网盘的索引只支持文档前1w字,这显然不行啊。

后来存飞书,飞书说对原本支持文本搜索的pdf文件可以全文搜索,但不支持epub等电子书格式。不过电子书格式用calibre转换一下,变成文本型pdf也还行。或者转换成docx格式,再导入飞书。不过飞书有限制,docx超过15000块,就不能导入了。而且,用了一段时间发现,飞书的搜索机制也很迷,一方面索引不全,一般的书一百多页以后的内容就搜不到了,另一方面,搜索命中率也不高,经常出现你搜「我爱学习」可以搜到,但是搜「我爱学」反而搜不到的情况,猜测可能和分词机制不合理有关。

然后,又找到一些国内外新晋提供类似服务的平台试了试,但不是速度太慢,就是限制太多。

此外,还尝试过自己搭建服务,类似Elasticsearch这种,一个基于Lucene的开源搜索文献引擎(Lucene是由apache软件基金会维护的一个开源全文检索包),但折腾半天,发现它对大于10w文字的文件支持也不友好(也许人家本身有解决方案只是我没找到),我英文水平又差,懒得翻文档了,所以放弃。

兜兜转转,烦了,累了,何必呢?何苦呢?最后决定还是本地搞吧。

按说如果没有pdf文件,一步就可以搞定,但是大多数pdf是扫描件,本身是不支持文本搜索的,所以需要多一个OCR的转换过程,给图像加一个文本层变得可搜索。

用到的软件就是两个:

1. archivarius3000 (一个塞浦路斯小公司做的软件,2018年已经停止更新,但是非常好用,支持各种电子书格式,可手动指定索引范围,建立索引速度快,搜索速度快,命中率高,秒杀如今市面上其他工具。具体评测见网页链接)

2. Adobe Acrobat pro Dc (可以批量对纯图像pdf进行可搜索化)

下载地址就不放了,百度一下到处都是。

第一步,打开acrobat,点击工具,选择扫描和OCR(图1),再选择识别多个文件中的文本(图2)添加书库文件夹,点击确定,其他设置看情况自己选吧,然后等待漫长的转换过程结束即可。

第二步,打开archivarius3000,点击索引,点击创建(图3)。这里主要是先把电子书都放到同一个目录中,只针对这个目录进行索引,可以提高效率。然后选择你要索引的书库(图4),其他选项不用动,默认设置即可,一路确定,等待索引建立完毕即可。另外就是,每次目录里如果添加了新书,或者ocr了新的pdf,都需要重新索引一下,这样才能搜到新书(图5)。好了,现在就可以进行搜索看下效果了(图6)。

以上是我这个土鳖自己找的笨办法,如果您有更高效的方式,希望不吝赐教[作揖]