---
title: "OpenSearcher - 开源的全文搜索工具：支持 Word、PPT、PDF，以及电子书 ePub、Mobi 等格式[Windows]"
date: 2022-12-01T07:31:15Z
modified: 2022-12-01T07:39:24Z
permalink: "https://www.appinn.com/opensearcher/"
type: post
status: publish
excerpt: ""
categories:
  - Windows
tags:
  - Windows
  - twp
  - 全文搜索
  - 开源
  - 电子书
featured_image: "https://www.appinn.com/wp-content/uploads/2022/12/OpenSearcher.jpg"
author: 青小蛙
timestamp: 2022-12-01T07:39:24Z
---

**OpenSearcher** 是一款开源的全文搜索工具，支持常见 Office 文档、PDF、.TXT，以及 ePub 和 Mobi 电子书。@Appinn

![OpenSearcher - 开源的全文搜索工具：支持 Word、PPT、PDF，以及电子书 ePub、Mobi 等格式[Windows]](https://static2.appinn.com/images/202211/opensearcher.jpg)

在昨天推荐的同类 #[全文搜索](https://www.appinn.com/tag/%e5%85%a8%e6%96%87%e6%90%9c%e7%b4%a2/?output_format=md) 工具《[TextLocator – 卖萌的小老头：低 CPU 占用的本地文档全文搜索工具\[Win\]](https://www.appinn.com/textlocator.md)》时，提到了这个工具，今天就来介绍一下。

来自[**发现频道**](https://meta.appinn.net/c/faxian/10)，开发者 @Gaoyongxian666 自荐：[https://meta.appinn.net/t/topic/38343/](https://meta.appinn.net/t/topic/38343/)

## OpenSearcher

一个基于 PyQt5 **本地的**、**安全的**、**开源的**、支持**全文检索**的搜索器。本项目使用纯 **Python** 编写，所使用的**第三方包**都为**开源库**。

支持的文件类型：

- `doc` Via [antiword 3](http://www.winfield.demon.nl/)
- `xls` Via [xlrd](https://github.com/python-excel/xlrd)
- `docx `Via [docx2txt](https://github.com/ankushshah89/python-docx2txt)
- `xlsx` Via [xlsx2csv](https://github.com/dilshod/xlsx2csv)
- `pptx` Via [python-pptx](https://github.com/scanny/python-pptx)
- `mobi` Via [mobi 1](https://github.com/iscc/mobi)
- `epub` Via [ebooklib](https://github.com/aerkalov/ebooklib)
- `pdf` Via [pdfminer.six 2](https://github.com/pdfminer/pdfminer.six)
- `doc、xls、ppt` Via [pywin32](https://github.com/mhammond/pywin32)

![](https://meta-cdn1.appinn.com/uploads/default/original/3X/7/f/7f148251f3bf6bfb2f919fe9a2f405278ae847f8.png)

可以在不事先创建索引的情况下，使用 OpenSearcher，当然它还是会创建索引，并缓存下来，只不过不强制。如果不是硬盘空间过于紧张，还是推荐建立索引。

`索引缓存`就是以`文件的 MD5 值`命名的 `Text` 文本文件，存放目录就在安装目录下的`.temp`文件夹下.（这意味这如果更新软件，你可以直接将`.temp`文件复制到新安装路径下，而不用耗费时间`重新索引`。）

建议关闭编辑器后（比如 Office）再进行搜索。

![](https://static2.appinn.com/images/202211/screen-appinn2022-12-01-14-21-59.jpg)

在第一次运行 OpenSearcher 的时候，可能会提示防火墙权限，青小蛙[询问](https://meta.appinn.net/t/topic/38343/12?u=qingwa)了开发者，得到的答复是：防「火墙我也不知道，我都是选否，要是说请求网络的话：使用了requests库，webbrowser库。」

拒绝通过防火墙之后，完全不影响使用，毕竟这是一款**本地的**、**安全的**、**开源的**、支持**全文检索**的搜索器。

## 关于 OpenSearcher

对于这个开源项目，开发者 @Gaoyongxian666 还提到：

这实际上是一个仿照 AnyTxT 写的项目，只是因为 AnyTxT 不开源，由于保密原则，某些环境下无法使用，所以自己写了一个开源项目，如果你单位也有保密原则，不妨试试，本项目所有依赖和包都是开源的，你也可以查看项目代码，自行打包。 由于不太懂设计美化，但是项目里面界面都是 `.ui` 文件，如果有会 `qss` 美化的可以帮忙 `fork` 美化一下。

## 关于速度

 搜索时间大部分都是消耗在第一次处理文件，也就是建立索引缓存那个过程。所以有时你在第一次搜索某个目录的时候感觉不是很快，但是如果你第二次搜索相同的目录将会很快。
原理是我在第一次处理文件时留下缓存文件，之后的搜索会根据文件md5值判断文件是否改变，如果文件内容没有改变直接读取缓存，如果文件内容改变将重新处理，这样就会大大提示搜索速度。
最后，推荐大家在空闲时间要提前建立索引，这样下次搜索会很快。

更多可以参考发现频道：[https://meta.appinn.net/t/topic/38343](https://meta.appinn.net/t/topic/38343)

最近一次更新在 21 个小时以前，正处于热恋期，有要求的快去提。

---

## 获取

- [发现频道](https://meta.appinn.net/t/topic/38343)
- [Github](https://github.com/Gaoyongxian666/OpenSearcher)
- [下载](https://d.appinn.com/opensearcher/)

## 还有一件事正在进行：Windows 下的《全文搜索工具》提名、投票

这里有一个正在进行中的，最新 Windows 下《全文搜索工具》提名，欢迎同学们前来提名、投票：

- [https://meta.appinn.net/t/topic/38517](https://meta.appinn.net/t/topic/38517)

目前已收录：[AnyTxt](https://www.appinn.com/anytxt-searcher.md)、[TextLocator](https://www.appinn.com/textlocator.md)、[OpenSearcher](https://www.appinn.com/opensearcher.md)，等待更新。

## Topics

**分类目录:** [Windows](https://www.appinn.com/category/windows/?output_format=md)

**标签:** [twp](https://www.appinn.com/tag/twp/?output_format=md), [全文搜索](https://www.appinn.com/tag/%e5%85%a8%e6%96%87%e6%90%9c%e7%b4%a2/?output_format=md), [开源](https://www.appinn.com/tag/%e5%bc%80%e6%ba%90/?output_format=md), [电子书](https://www.appinn.com/tag/%e7%94%b5%e5%ad%90%e4%b9%a6/?output_format=md)