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

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

本项目地址在github开源地址为:GitHub - Hellohistory/DX2_5: DX书库网页检索版
下面复制README文件进行简单介绍,详情请查看github

简介

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

数据库备份

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

快速开始

使用 Docker 运行

  1. 首先,确保您已经安装了 Docker

  2. 克隆此仓库:

    git clone https://github.com/Hellohistory/DX2_5.git
    cd your-repo-dir
    
  3. 构建 Docker 镜像:

    docker build -t dx2_5 .
    
  4. 运行 Docker 容器:

    docker run -p 10223:10223 dx2_5
    

    这将会把应用运行在 http://localhost:10223/

Docker 容器存储设置

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

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

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

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

功能

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

声明

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

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

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

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

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

提取码:dx25

就是dx25,链接被压缩了

多谢,我试一下看看

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

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

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

1 个赞

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

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

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

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

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

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

装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系统。

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

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

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

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

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

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