# 读秀书库本地网页检索程序

**URL:** <https://forum.freemdict.com/t/topic/23929>\
**Category:** 软件经验交流展望\
**Tags:** 电子书, 技术\
**Created:** [2023 年10 月 8 日 12:43 UTC](https://forum.freemdict.com/t/topic/23929 "2023-10-08T12:43:26Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 8 日 12:43 UTC](https://forum.freemdict.com/t/topic/23929/1 "2023-10-08T12:43:26Z")

</div>

有很多倒买倒卖电子书资源的人在互联网存在，本人认为这是对互联网精神的践踏，因此对我自己搜集的资源与开发的程序开源供大家使用

本项目地址在github开源地址为：[GitHub - Hellohistory/EbookDatabase: 本地网页书籍信息检索](https://github.com/Hellohistory/DX2_5)  
下面复制README文件进行简单介绍，详情请查看github

## 简介

这是读秀书库的本地化检索版本。该项目使用 FastAPI 和 SQLite 数据库构建，并可以通过 Docker 轻松部署。

[![](https://forumcdn.freemdict.com/uploads/default/original/3X/1/9/19b25fc1976dc365bc0191d4808d51b4d592f48e.png)](https://picshack.net/ib/SkJnswiNEi)

## 数据库备份

数据库备份可以通过以下网盘链接获取：

- [网盘链接](https://www.123pan.com/s/oNv9-zWI2.html)

## 快速开始

### 使用 Docker 运行

1. 首先，确保您已经安装了 [Docker](https://www.docker.com/products/docker-desktop)。

2. 克隆此仓库：

3. 构建 Docker 镜像：

4. 运行 Docker 容器：

## Docker 容器存储设置

在 Dockerfile 中，使用 `RUN mkdir /app/instance` 命令来在容器的 `/app` 工作目录下创建一个名为 `instance` 的文件夹。这个文件夹用于存放 SQLite 数据库。

为了使这个数据库文件夹能够从外部访问并持久化存储，可以在运行 Docker 容器时使用 `-v` 参数来将这个 `instance` 文件夹映射到宿主机的一个特定目录。

```bash
docker run -v /path/to/instance:/app/instance -v /path/to/logs:/app/logs your-image-name

```

这里，`/path/to/instance` 和 `/path/to/logs` 是在宿主机上用于存放数据库和日志的目录。

## 功能

- 本地化检索
- 支持模糊搜索和准确搜索
- 分页显示结果

[![](https://forumcdn.freemdict.com/uploads/default/original/3X/6/e/6efdd547b54daedcf871aee94caa1436a7d18bd9.png)](https://picshack.net/ib/lr229485zI)

## 声明

```auto
本项目仅用于学习交流，禁止使用到任何的商业场景当中

本项目绝对不会以任何形式授权任何人用于商业用途，任何商业场景申明使用到本项目均为造谣

如若侵犯权益，请联系本项目删除

本项目不承担任何责任，责任均由使用者负责，详情请阅读许可证文件
```

---

<div class="post-metadata">

作者： ![3futoucher](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/3/47e85d/32.png) [@3futoucher](https://forum.freemdict.com/u/3futoucher)\
发布日期： [2023 年10 月 8 日 12:50 UTC](https://forum.freemdict.com/t/topic/23929/2 "2023-10-08T12:50:57Z")

</div>

数据库需要提取码，请问是啥

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 8 日 12:51 UTC](https://forum.freemdict.com/t/topic/23929/3 "2023-10-08T12:51:42Z")

</div>

提取码：dx25

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 8 日 12:51 UTC](https://forum.freemdict.com/t/topic/23929/4 "2023-10-08T12:51:56Z")

</div>

就是dx25，链接被压缩了

---

<div class="post-metadata">

作者： ![3futoucher](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/3/47e85d/32.png) [@3futoucher](https://forum.freemdict.com/u/3futoucher)\
发布日期： [2023 年10 月 8 日 12:59 UTC](https://forum.freemdict.com/t/topic/23929/5 "2023-10-08T12:59:56Z")

</div>

多谢，我试一下看看

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 11:06 UTC](https://forum.freemdict.com/t/topic/23929/6 "2023-10-09T11:06:11Z")

</div>

docker run -p 10223:10223 dx2\_5  
ModuleNotFoundError: No module named ‘aiosqlite’  
怎么解决

新手实在弄不懂，有的命令照抄不管用，能否录个视频？光是docker安装就一堆麻烦。好多报错参考网上修复也不清楚是否解决。

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 11:26 UTC](https://forum.freemdict.com/t/topic/23929/7 "2023-10-09T11:26:56Z")

</div>

现有解决方案可以直接实现本地部署，把数据库放在instance文件夹之下就可以了，可以参考我最新的md

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:03 UTC](https://forum.freemdict.com/t/topic/23929/8 "2023-10-09T13:03:40Z")

</div>

新方法同样的报错。。。  
import aiosqlite  
ModuleNotFoundError: No module named ‘aiosqlite’

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:20 UTC](https://forum.freemdict.com/t/topic/23929/9 "2023-10-09T13:20:03Z")

</div>

这不就是显示没有aiosqlite这个库嘛，用pip安装，pip install aiosqlite，这个项目里面用这个库做异步数据库

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:21 UTC](https://forum.freemdict.com/t/topic/23929/10 "2023-10-09T13:21:10Z")

</div>

安装好了，然后  
assert jinja2 is not None, “jinja2 must be installed to use Jinja2Templates”  
^^^^^^^^^^^^^^^^^^  
AssertionError: jinja2 must be installed to use Jinja2Templates  
是requirements里的库不全吗，建议添加上。  
jinja2安装了就好了。

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:24 UTC](https://forum.freemdict.com/t/topic/23929/11 "2023-10-09T13:24:35Z")

</div>

我用pycharm自动添加，有可能不全，有问题提Issues或者直接pr就可以了

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:28 UTC](https://forum.freemdict.com/t/topic/23929/12 "2023-10-09T13:28:03Z")

</div>

命令行显示网址也是错的：

 ![image](https://forumcdn.freemdict.com/uploads/default/original/3X/7/c/7c549d7366554adf0a5655c6d84ec67d2b966cbe.png)

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:30 UTC](https://forum.freemdict.com/t/topic/23929/13 "2023-10-09T13:30:31Z")

</div>

~~缺的库安装了docker还是无法运行，还是显示没有aiosqlite模块~~  
已解决

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:33 UTC](https://forum.freemdict.com/t/topic/23929/14 "2023-10-09T13:33:28Z")

</div>

装docker时 error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker\_engine/v1.xx/info  
我这样解决的：  
cd"C:\Program Files\Docker\Docker"  
DockerCli.exe -SwitchDaemon

打开docker会提示一个东西版本过旧，得依照弹窗其所说更新，会安装一个基于linux的windows系统。

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:33 UTC](https://forum.freemdict.com/t/topic/23929/15 "2023-10-09T13:33:48Z")

</div>

docker只是便于部署的工具，不是项目必须的，如果你只是想要在本地短期运行就直接使用本地模式就可以了

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:34 UTC](https://forum.freemdict.com/t/topic/23929/16 "2023-10-09T13:34:43Z")

</div>

你这个不就是已经安装全了吗，这个0.0.0.0就是监控全部从10223端口的信息，直接访问这个就可以了

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:35 UTC](https://forum.freemdict.com/t/topic/23929/17 "2023-10-09T13:35:26Z")

</div>

不太懂，不能直接显示为正确的网址直接戳它打开更方便吗

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:36 UTC](https://forum.freemdict.com/t/topic/23929/18 "2023-10-09T13:36:39Z")

</div>

你这个是本地部署的版本，本地部署是没有域名的，这个是在你的本地网络部署的，可以断网运行的，数据全部都在你的本地，不受到任何人的威胁

---

<div class="post-metadata">

作者： ![鳩山一茶](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6/32/28506_2.png) [@鳩山一茶](https://forum.freemdict.com/u/%E9%B3%A9%E5%B1%B1%E4%B8%80%E8%8C%B6)\
发布日期： [2023 年10 月 9 日 13:37 UTC](https://forum.freemdict.com/t/topic/23929/19 "2023-10-09T13:37:20Z")

</div>

你现在在你的浏览器访问http://0.0.0.0:10223就可以访问了

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2023 年10 月 9 日 13:37 UTC](https://forum.freemdict.com/t/topic/23929/20 "2023-10-09T13:37:22Z")

</div>

得打开的是这个：[http://localhost:10223/](http://localhost:10223/)  
直接显示这个能减少些误区。

[下一页](https://forum.freemdict.com/t/topic/23929.md?page=2)
