开源好用的电子书管理服务Talebook(Calibre网络版)安装使用指南

新浪微博 QQ空间

今天是世界读书日,介绍一款已经用过一段时间的电子书在线管理、阅读服务。Talebook是一个开源的Calibre WEB外壳,源项目地址是:Github项目,我为了方便自己开发,在自己的代码托管服务上放了一份源码,方便存放自己的开发过程代码。也经常将自己用稳定了的特性或者修改的Bug提交MR推送到原作者的项目中。我主要会根据自己的需要开发一些特性和修复我认为比较关键的bug。代码地址为:自用Talebook地址Docker镜像地址。增加了多个特性,如:限制单个IP地址下载书籍的数量限制特性,用来防止爬虫大并发爬取书籍,导致站点不可用。另外还增加了一些统计信息和界面修改等,具体的差异点可以对比两个代码工程的获取。我也会持续跟进源项目的新特性,实时合并,也继续推送自己的修改到源项目。

更新记录列表:

  1. 支持限制单个IP地址下载数量;
  2. 支持随机推荐和最新书籍推荐手动刷新;
  3. 支持个人阅读、访问、下载和推送记录,也支持一键清除,优化历史记录页面;
  4. 新增“我的收藏”功能;
  5. 上传成功的图书即从upload目录删除,避免书籍被保存两份,浪费空间;
  6. 导入页面,在删除导入记录的同时,也删除上传到uploads目录的图书;
  7. 书籍页面新增豆瓣链接;
  8. 支持“分类导览”页面可定制,修改本地的data/books/settings/tags.yaml文件,然后重启容器即可;
  9. 支持添加“自定义运行脚本”,可以指定站点跟踪脚本;
  10. 支持批量删除数据、批量添加标签、批量抓取元数据;
  11. 支持流式加载PDF文件阅读。
  12. 支持批量抓取豆瓣元信息,并且批量确认和取消。配合shentar/douban_api:latest镜像使用;
  13. “所有书籍”页面支持按照书名拼音排序。

跟原项目一样,我也基于仓库代码生成了镜像,推送到了dockerhub,有了Docker镜像,安装使用起来就非常方便:

docker run -d --name calibre \
-p 127.0.0.1:12579:80 \
-v /media/c2/docker/calibre/data:/data \
-E TZ="Asia/Shanghai" \
shentar/talebook:latest

我这里将容器内的80端口映射到本机的内部随机端口,然后再在宿主机上面使用Nginx反向代理对外提供HTTPS服务。反向代理时,需要注意一些配置:

server {
    listen 6870 ssl http2;
    server_name book.codefine.site;
    index index.html index.htm index.php default.html default.htm default.php;
    root /any/local/path/;
 
    ssl_certificate ***********;
    ssl_certificate_key ***********;
 
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 
    client_max_body_size 500M; 
 
    location / {
        proxy_pass http://127.0.0.1:12579/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Nginx-Proxy true;
        proxy_set_header X-Scheme $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
    }
 
    access_log on;
}

注意这些Header必须正确设置,否则可能无法正常打开主页。 剩下的就是从网页打开宿主机的6870端口即可访问。我的宿主机是有域名的因此,我的站点的地址就是:https://book.codefine.site:6870,首次打开时,会做一些必要的配置,如私人模式还是多用户模式。admin账号和密码设置等。完成后就可以愉快的使用talebook存取电子书籍了。 对于网络下载的各种电子书文件,元信息可能都不准确,因此需要从豆瓣等刮削元信息。开源社区有一个现成的刮削服务,douban-api-rs:源码地址为:https://github.com/cxfksword/douban-api-rs,这个也提供Docker的安装方式,不过作者并没有在Dockerhub上面放镜像。而是在Github自己的镜像服务上面托管镜像。如果是命令行安装,只需要执行如下命令即可:

docker run -d \
--name=douban-api-rs \
--restart=always \
-p 172.17.0.1:8080:80
ghcr.io/cxfksword/douban-api-rs:latest

如果是群晖等NAS服务,则需要自行配置新的镜像源才能拉去到该镜像。具体笔者没有使用过,需要自行探索。可以使用如下docker部署刮削服务,注意,本站的talebook镜像必须配套这个刮削服务,如果混用会有各种异常,或导致IP地址被豆瓣禁用。 https://hub.docker.com/r/shentar/douban_api

docker run -p 172.17.0.1:12568:8080 --name douban_api --restart=always \
-v /your/data/volume/full/path/:/data \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-e LOG_LEVEL="warn" \
-e COOKIE='your douban login cookie' \
-d shentar/douban_api:latest

然后到Talebook的高级配置项目中配置即可:

image

我这里之所以选择使用172.17.0.1作为监听地址,是因为这个地址是我的docker服务的网络的虚拟网关,宿主机也能访问这个IP地址。这样,在Talebook内部就能用这个地址与豆瓣刮削服务通信。上传电子书之后,只要设置正确的书籍名字即可进行全量元数据的抓取了。豆瓣网站不再提供书籍的标签(Tag)了,因此Talebook服务端做了从作者、标题和书籍摘要中匹配Tag的实现,准确率还行。 感谢Talebook作者贡献这么好的开源项目,并且多年来还在积极维护。这个项目也让我初步接触到Vue.js、Node.js、Python3 Tornado等生态,开发WEB项目,使用这些组件,效率极高。什么时候有精力可以把jAlbum的前端好好用这些写一下。

新浪微博 QQ空间

| 1 分2 分3 分4 分5 分 (5.00- 5票) Loading ... Loading ... | 这篇文章归档在:WEB网络, 建站技术, 数码硬件, 移动互联 | 标签: , , , , , . | 永久链接:链接 | 评论(122) |

122 条评论

  1. xxgl
    评论于 十一月 7, 2024 at 09:56:19 CST | 评论链接

    今天更新了最新版的镜像,创建容器成功后,就是无法运行,也没有任何提示,容器日志为空,重新启动容器依旧是立马停止,还以为是我配置文件太多了,就清空了当前容器挂载卷,重新部署,问题依旧,环境是x86的openpwrt下

    • 童燕群
      评论于 十一月 9, 2024 at 09:54:57 CST | 评论链接

      最近一次更新引入了bug,全新安装有问题。升级应该是没问题的,不动data目录,不会有问题。

    • 童燕群
      评论于 十一月 9, 2024 at 09:55:35 CST | 评论链接

      已经修复了,再看看呢。

  2. ppcfans
    评论于 十月 27, 2024 at 11:26:46 CST | 评论链接

    目前问题:
    群晖安装后启动,出现exec /var/www/talebook/docker/start.sh: no such file or directory,但进入卷中查看,是有start.sh的。

    可能导致的原因:
    前面都是一直可以安装的,后来换了几次版本,包括shentar版本(启动后,一直是写入保存状态),主要是因为各版本总是存在无法豆瓣拉取书籍信息的问题,所以折腾了多次,以为是各次安装时有残留信息导致,用find果然找不到不少含talebook的存储卷,就都删掉了。
    但是在这之后,就没法安装了,用ssh无法load,后来用portainer导入镜像,但启动时就出现开头出现的问题。

    不知道如何解决,请赐教!

    • 童燕群
      评论于 十月 28, 2024 at 00:54:47 CST | 评论链接

      看起来像是镜像库被破坏了。这块我也不熟练。建议重新找个环境配置docker安装一下看看。通过portainer操作镜像,别在镜像内部删除文件吧。

      • ppcfans
        评论于 十月 31, 2024 at 20:30:26 CST | 评论链接

        谢谢,整个容器重装了。但是启动注册账户时,一直显示“服务器正在启动中”,点击下面的关闭后,显示“正在写入配置文件”,删除网址后面的/install,可以直接进入,不知道后面使用会不会有问题。

  3. 1
    评论于 七月 5, 2024 at 16:32:51 CST | 评论链接

    大佬 ,主项目更新了,小小的催更一下

    • 童燕群
      评论于 七月 19, 2024 at 10:32:53 CST | 评论链接

      看了一下,就是同一本书支持多格式这个吧。感觉意义不是太大啊,放进书库肯定要选取格式最好的那一版啊。

  4. benjafpz
    评论于 六月 13, 2024 at 00:42:59 CST | 评论链接

    不知道能否实现导入图书库之后生成硬链接(类似NAStool)整理视频,想在办理书籍文件整理的同时,导入书库不要重复保存

  5. 匿名
    评论于 五月 21, 2024 at 07:43:32 CST | 评论链接

    报错
    以前部署在威联通上可以正常访问,因为系统盘出了问题换盘后重新拉取镜像部署了一次,启动后访问映射的端口网址显示这个页面,不是talebook的配置页面,请问要设置什么?我本机没有安装nginx,容器的nginx配置文件也不知道在哪里

    • 匿名
      评论于 五月 30, 2024 at 19:06:06 CST | 评论链接

      换回原版了,使用原版docker的master分支镜像使用没问题

  6. fewroad
    评论于 十二月 11, 2023 at 09:34:09 CST | 评论链接

    作者您好,我是一名计算机专业的大二学生,但是现在我看这种项目还是看不懂唉,就是之前无意浏览到这个代码人生网站可以下载书籍,然后我就把他收藏起来了,但是现在我打开网站提示要输入密码,现在我应该怎么办呢。是要自己配置一个网站吗?希望得到您的回复

  7. 匿名
    评论于 十一月 26, 2023 at 13:05:41 CST | 评论链接

    求助……

    描述:异常的书籍删除之后(看日志是文件名太长导致的异常,然后在书的页面进行了删除),再次导入或者上传时提示书已存在(把上传的文件名已经修改成短的了)。

    1.导入时,日志里是“analysed one book: status=exist”。
    2.从导入界面的链接过去,或者搜索该书查不到,“[ 28 ms] select books from library (count = 0) [ 30 ms] select books from database (count = 0) the book with id[xxx] is not found.”

    也就是陷入尴尬的无法重新导入,也无法搜索到的境地……特此求助……

    • 匿名
      评论于 三月 4, 2024 at 23:44:57 CST | 评论链接

      问题解决了。
      用calibre把这个epub文件的文件title改短后重新导入,修改过的文件和原文件不同,可以被识别重新导入。

  8. 匿名
    评论于 十月 22, 2023 at 16:23:22 CST | 评论链接

    为什么新建了booksimports文件夹依然无法读取书籍呢

    • 童燕群
      评论于 十月 22, 2023 at 16:50:00 CST | 评论链接

      看看日志报啥错呢。

      • 匿名
        评论于 十月 22, 2023 at 16:52:20 CST | 评论链接

        日记没报错然后都能正常运行,上传可以但是建立文件夹扫描不出来

      • 匿名
        评论于 十月 22, 2023 at 16:54:51 CST | 评论链接

        [I 231022 07:51:23 main:126] Init library with [/data/books/library/]
        stdout
        07:51:23
        [I 231022 07:51:23 main:127] Init AuthDB with [sqlite:////data/books/calibre-webserver.db]
        stdout
        07:51:23
        [I 231022 07:51:23 main:128] Init Static with [/var/www/talebook/webserver/resources]
        stdout
        07:51:23
        [I 231022 07:51:23 main:129] Init HTML with [/var/www/talebook/webserver/../app/dist]
        stdout
        07:51:23
        [I 231022 07:51:23 main:130] Init Nuxtjs with [/var/www/talebook/webserver/../app/.env]
        stdout
        07:51:23
        [I 231022 07:51:23 models:41] Bind modles._session()
        stdout
        07:51:23
        [I 231022 07:51:23 main:149] Create tables into DB
        stdout
        07:51:23
        [I 231022 07:51:23 main:126] Init library with [/data/books/library/]
        stdout
        07:51:23
        [I 231022 07:51:23 main:127] Init AuthDB with [sqlite:////data/books/calibre-webserver.db]
        stdout
        07:51:23
        [I 231022 07:51:23 main:128] Init Static with [/var/www/talebook/webserver/resources]
        stdout
        07:51:23
        [I 231022 07:51:23 main:129] Init HTML with [/var/www/talebook/webserver/../app/dist]
        stdout
        07:51:23
        [I 231022 07:51:23 main:130] Init Nuxtjs with [/var/www/talebook/webserver/../app/.env]
        stdout
        07:51:23
        [I 231022 07:51:23 main:133] updating configs …
        stdout
        07:51:23
        [I 231022 07:51:23 main:138] done

        • 童燕群
          评论于 十月 22, 2023 at 21:14:41 CST | 评论链接

          这个看不出问题,要看你点击了扫描按钮之后服务端的日志。你先恢复默认配置,然后检查admin界面配置的uploads目录与你预期的扫描目录是否同一个。默认的应该是/data/books/imports/目录。

          • 匿名
            评论于 十月 23, 2023 at 10:03:41 CST | 评论链接

            已经折腾好了谢谢

  9. 匿名
    评论于 九月 3, 2023 at 17:02:20 CST | 评论链接

    豆瓣插件总是关联不了,总抓取不到信息,请问是怎么回事

    • 童燕群
      评论于 九月 4, 2023 at 20:02:00 CST | 评论链接

      1、检查是否设置了cookies,可以从浏览器中的登录后的发往官网的请求中取。一般设置一次可以用很久。
      2、可以看看容器内/data目录的日志文件中打印的请求失败的原因是什么。

  10. cc520
    评论于 八月 14, 2023 at 11:57:53 CST | 评论链接

    谢谢回复,我的是进度条加载完了,一直放着也无法阅读,300-500多M没问题,加载也快!

    • 童燕群
      评论于 八月 15, 2023 at 11:07:48 CST | 评论链接

      很可能跟浏览器加载文件大小的上限、文件格式等有关系。这个延迟加载其实意义也不是太大。就是可以早几秒看到目录和前几页。超大文件还是离线阅读好用 :)

  11. cc520
    评论于 八月 14, 2023 at 07:03:02 CST | 评论链接

    你好,在线阅读打开pdf大文件(大于700M),无法正常阅读,如何解决?是否有版本更新

    • 评论于 八月 14, 2023 at 09:08:00 CST | 评论链接

      现在我提供的镜像就支持的。还是要等到加载一段之后才能开始读取。

  12. 1
    评论于 六月 30, 2023 at 16:25:17 CST | 评论链接

    折腾一天的最新状态:log里还是会有这个报错,不过已经可以在线阅读了

  13. 1
    评论于 六月 28, 2023 at 11:29:42 CST | 评论链接

    在线还是打不开,提示这个

    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/css/bootstrap.css'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/css/viewer.css'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/css/readium_js.css'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/js/jquery-1.11.1.min.js'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/lib/require.js'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/lib/ReadiumViewerLite.js'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/require_config.js'
    [E 230628 11:16:25 web:2990] Could not open static file '/var/www/talebook/webserver/resources/readium/css/annotations.css'

     

    • 童燕群
      评论于 六月 28, 2023 at 11:32:33 CST | 评论链接

      看起来就是权限问题

      • 1
        评论于 六月 30, 2023 at 08:05:27 CST | 评论链接

        这是重新创建了一遍容器,在群晖界面勾上了使用高权限后的报错。。。
        可以通过在环境里加上pid和cid的方式提高权限么

      • 1
        评论于 六月 30, 2023 at 08:12:28 CST | 评论链接

        还有一个思路,想把除library文件夹外的所有文件夹删除重建,设置有备份,就是不知道这样会不会影响新容器里书籍的呈现

      • 1
        评论于 六月 30, 2023 at 08:19:32 CST | 评论链接

        刚刚进容器里看了一下,发现是/var/www/talebook/webserver/resources/下readium文件夹没有被创建,所以没有读取成功

  14. 1
    评论于 六月 15, 2023 at 14:37:32 CST | 评论链接

    在线阅读合集报错如下:

    [I 230615 14:27:35 web:2239] 200 GET /api/book/21313 (221.207.91.247) 1370.42ms
    [W 230615 14:27:35 web:2239] 404 GET /get/extract/%E9%BB%84%E6%B0%B8%E7%8E%89/%E6%97%A0%E6%84%81%E6%B2%B3%E7%9A%84%E6%B5%AA%E8%8D%A1%E6%B1%89%E5%AD%90%C2%B7%E6%9C%B1%E9%9B%80%E5%9F%8E%2B%E5%85%AB%E5%B9%B4%20%2821327%29/META-INF/container.xml?0.12107901969831159 (221.207.91.247) 3.59ms
    [W 230615 14:27:35 web:1787] 404 GET /get/progress/21327 (221.207.91.247): nothing
    [W 230615 14:27:35 web:2239] 404 GET /get/progress/21327 (221.207.91.247) 4.17ms
    [W 230615 14:27:37 web:1787] 404 GET /get/progress/21327 (221.207.91.247): nothing
    [W 230615 14:27:37 web:2239] 404 GET /get/progress/21327 (221.207.91.247) 4.75ms

     

    • 1
      评论于 六月 15, 2023 at 14:38:41 CST | 评论链接

      刚才的代码是.log里的,前端显示系统异常

      • 童燕群
        评论于 六月 16, 2023 at 16:05:45 CST | 评论链接

        这里看起来是extract迟迟没有完成。有两种可能:1、没有权限把epub解压成目录,没有写目录和文件的权限。2、epub本身有问题,calibre解压会失败。这样前台界面就最终超时报错。

        • 1
          评论于 六月 16, 2023 at 16:31:05 CST | 评论链接

          如果是1的原因,是不是所有的在线都无法打开?还是有其他情况
          如果是文件本身,下载下来的epub文件,ie是能正常读取的,
          我把两个文件传上来,
          https://fast.uc.cn/s/82e1299235de4
          https://fast.uc.cn/s/4d87d1a8f8d04
          有时间还请童哥帮忙看看

          • 童燕群
            评论于 六月 19, 2023 at 19:00:58 CST | 评论链接

            我试了一下,两本书都没问题,都可以正常的extract和阅读。

  15. Juno
    评论于 六月 13, 2023 at 17:13:47 CST | 评论链接

    感谢楼主分享,已在自己NAS上部署使用;在图书阅读体验上,能否进行页面适配一下。如看mobi,或者一些图片式的PDF,能不能让一页缩放在一个屏幕上。现在是会超出屏幕边界,割裂感有点难受。谢谢。

    • 童燕群
      评论于 六月 13, 2023 at 20:45:49 CST | 评论链接

      我也发现这个问题了。这是mobi转epub后,有些style转丢了导致的。具体原因也没分析,书籍转类别是由calibre做的。talebook控制不了。一般而言pdf不会有问题的。所以解决办法就是尽量使用epub和pdf格式,尽量不用质量差的扫描版。

      • Juno
        评论于 六月 14, 2023 at 11:06:43 CST | 评论链接

        在PC端其实还好,主要是手机端上体验不好。我现在只能暂时放弃用talebook来看图片类(如漫画)的书,文字类的还好。看漫画用komga比较好,文件导入,阅读体验都不错,但是komga不支持mobi,所以又要用Calibre来转格式。
        另外,我用Kybook3一直连接不了opds(内网使用),报错网络断开。但是连 https://book.codefine.site:6870/opds/ 又是正常的,(但是不能下载),不知道是不是哪里没有设置好。

        • 童燕群
          评论于 六月 14, 2023 at 11:27:29 CST | 评论链接

          因为不是完全公开访问的,opds其实等同于不能用。一般软件都不支持传入私人图书馆密码或者cookies。

  16. 空返
    评论于 六月 5, 2023 at 16:40:34 CST | 评论链接

    查询跳出这个提示错误,是什么原因?
    Exception:
    Traceback (most recent call last):
    File “/var/www/talebook/webserver/handlers/base.py”, line 51, in do
    rsp = func(self, *args, **kwargs)
    File “/var/www/talebook/webserver/handlers/base.py”, line 78, in do
    return func(self, *args, **kwargs)
    File “/var/www/talebook/webserver/handlers/book.py”, line 193, in get
    books = self.plugin_search_books(mi)
    File “/var/www/talebook/webserver/handlers/book.py”, line 153, in plugin_search_books
    books = [api._metadata(b) for b in books]
    File “/var/www/talebook/webserver/handlers/book.py”, line 153, in
    books = [api._metadata(b) for b in books]
    File “/var/www/talebook/webserver/plugins/meta/douban.py”, line 159, in _metadata
    mi.tags = [t[“name”] for t in book[“tags”]][:8]
    KeyError: ‘tags’

    • 空返
      评论于 六月 5, 2023 at 16:46:56 CST | 评论链接

      补充一下:是安装了豆瓣的镜像服务,然后点获取信息就跳出这个错误提示。

    • 童燕群
      评论于 六月 5, 2023 at 17:22:09 CST | 评论链接

      看起来是一个已经解决的bug,需要升级一下shentar/talebook:latest这个镜像。

      • 空返
        评论于 六月 6, 2023 at 10:08:03 CST | 评论链接

        是镜像问题,用了talebook/talebook镜像,换了shentar/talebook镜像就正常。谢谢~

      • 空返
        评论于 六月 18, 2023 at 12:18:05 CST | 评论链接

        又碰到一桩尴尬事:设置成私人书库,现在说访问密码不对。有没有办法恢复的?

        • 童燕群
          评论于 六月 18, 2023 at 14:22:29 CST | 评论链接

          在挂载的目录里面搜索一下auto.py文件,里面有个invitecode,这就是接入码。

          • 空返
            评论于 六月 18, 2023 at 17:12:03 CST | 评论链接

            谢谢。

  17. 匿名
    评论于 五月 15, 2023 at 13:41:01 CST | 评论链接

    群辉docker安装doubanapi容器后,打开显示是404 page not found对吗?然后也刮削不到豆瓣的数据,-v /etc/timezone:/etc/timezone:ro \
    -v /etc/localtime:/etc/localtime:ro \这两个命令没法执行

    • 童燕群
      评论于 五月 15, 2023 at 14:39:08 CST | 评论链接

      之前正文里面贴的命令有点问题(–被转换成了破折号),这里要带着 \ 一起执行,不是一行一行的执行。

      docker run -p 172.17.0.1:12568:8080 --name douban_api --restart=always \
      -v /your/data/volume/full/path/:/data \
      -v /etc/timezone:/etc/timezone:ro \
      -v /etc/localtime:/etc/localtime:ro \
      -e LOG_LEVEL="warn" \
      -e COOKIE='your douban login cookie' \
      -d shentar/douban_api:latest

       

    • 童燕群
      评论于 五月 15, 2023 at 14:41:07 CST | 评论链接

      另外这是个api服务,没有界面。如果url拼写和参数填写正确,应该是显示json格式的内容。

    • 匿名
      评论于 五月 15, 2023 at 19:14:23 CST | 评论链接

      报错,我的环境是群辉220+

      • 童燕群
        评论于 五月 15, 2023 at 19:39:13 CST | 评论链接

        那只能删掉这个吧,只是时间显示可能有点别扭,没有其他影响。

  18. bailz1911
    评论于 五月 6, 2023 at 09:10:02 CST | 评论链接

    大佬,您好。想请教一个问题,我安装的应该是原版的talebook,用手机访问我的书库阅读书籍时,总是不能在线看书,必须要先下载到手机里,这 应该就不是流式pdf吧。您的这个版本支持流式pdf,是不是您做出了修改,并且支持手机在线阅读?谢谢。

    • 童燕群
      评论于 五月 6, 2023 at 10:03:59 CST | 评论链接

      是的,做了一点优化,我也把优化方法提在原版的issue列表里面了。我这个版本脱离主干比较多了,没法提MR合并到主干了。

      • bailz1911
        评论于 五月 6, 2023 at 10:23:05 CST | 评论链接

        我前几天重新安装的原版的talebook应该是也支持流式pdf了,我在手机上可以直接看不需要下载了。可能是你提交的issue被接受并被修改了

        • 童燕群
          评论于 五月 6, 2023 at 11:07:26 CST | 评论链接

          我说的是从原版同步过来继续优化了PDF在线阅读的逻辑。你说的应该是PDF在线阅读的功能,这个是从原版同步过来的。流式加载是指不用等书籍下载完成,就可以加载前面的章节,在客户端跟服务端的网络带宽不够大时,比较有用。这个在原版上面不支持,我优化了。

  19. nco771
    评论于 四月 29, 2023 at 17:01:34 CST | 评论链接

    大佬你好 在作者这行本来就一个 突然间多出3个还是乱码 是怎么回事?

    • 童燕群
      评论于 四月 29, 2023 at 20:25:45 CST | 评论链接

      作者是从书籍里面的元数据提取的,很多PDF文档的元数据不正确或者编码不对,可以在talebook编辑书籍信息就好了。

  20. 兔八哥
    评论于 四月 17, 2023 at 12:00:39 CST | 评论链接

    大佬您好,我群晖docker装了你这个修改版以后,有几个问题需要请教:
    1.每次保存设置之后,总是停留在服务器正在启动中。。。,关闭以后发现设置其实已经保存了。
    2.我在导入图书中,扫描书籍,怎么发现不了txt文件。
    其他的比原版好用。

    • 兔八哥
      评论于 四月 17, 2023 at 12:02:29 CST | 评论链接

      我安装的都是在docker注册表里面搜到的你发布的
      映像。

    • 童燕群
      评论于 四月 17, 2023 at 13:00:57 CST | 评论链接

      txt在扫描的时候被排除了,因为txt转格式之后,排版大多不友好,所以没支持,并且一般的书都能找到epub或者pdf。

    • 童燕群
      评论于 四月 17, 2023 at 13:02:40 CST | 评论链接

      保存之后会自动重启一次,重启一次时间较长(具体时长取决于硬件性能,一般30s内),重启过程中点击按钮等会报重启中,可以重新刷新一次就可以不会继续提示启动中。如果设置 自定义代码 ,会达到分钟级。

      • 兔八哥
        评论于 四月 17, 2023 at 14:06:12 CST | 评论链接

        好的,谢谢。

  21. 匿名
    评论于 四月 11, 2023 at 13:02:30 CST | 评论链接

    请教大佬,如何设置可以上传大于100M的pdf呢?谢谢

    • 童燕群
      评论于 四月 11, 2023 at 18:12:17 CST | 评论链接

      管理员在 管理-系统配置-高级配置 里面修改上传最大大小限制的配置项。

  22. 匿名
    评论于 四月 10, 2023 at 15:16:05 CST | 评论链接

    请问大佬,书籍简介里写入的文字,不会分段,全部段落都自己粘在一行里了。要怎么搞?谢谢

    • 童燕群
      评论于 四月 10, 2023 at 16:56:24 CST | 评论链接

      加或者用分段

      • 童燕群
        评论于 四月 10, 2023 at 16:57:22 CST | 评论链接
        加换行<br/>
        或者用<p></p>分段

         

  23. 匿名
    评论于 四月 9, 2023 at 16:24:42 CST | 评论链接

    感谢大佬分享,是不是docker下载的版本不支持多用户?请问在哪里提供多用户版本呢?

    • 匿名
      评论于 四月 9, 2023 at 16:25:31 CST | 评论链接

      我在登录 界面并未看到有注册的按钮呀

      • 评论于 四月 9, 2023 at 17:48:16 CST | 评论链接

        1、设置里面有个允许游客注册的选项是否已经开启。
        2、登录框的右上角就是注册按钮。

        • 匿名
          评论于 四月 9, 2023 at 22:14:10 CST | 评论链接

          可以了,谢谢

  24. Hack3r
    评论于 三月 22, 2023 at 13:39:18 CST | 评论链接

    请问这个bug具体应该怎么修复呢?我在内网环境下部署的,没有链接互联网,不想重新导一遍镜像了,非常感谢您的解答!

  25. Hack3r
    评论于 三月 22, 2023 at 10:25:24 CST | 评论链接

    博主您好,请问安装talebook时设置管理员密码总是弹出密码无效怎么办?部署的是您的Dev版本docker

    • 童燕群
      评论于 三月 22, 2023 at 13:13:13 CST | 评论链接

      dev有个密码校验的bug,后面验证稳定之后,我就切换到latest了,dev忘记更新了 ^_^。我同步更新了dev,现在latest和dev是完全一样的了。

  26. 评论于 三月 4, 2023 at 01:33:45 CST | 评论链接

    请问支持pdf懒加载阅读吗

    • 童燕群
      评论于 三月 4, 2023 at 08:51:40 CST | 评论链接

      还没有支持。我看主站已经用pdf.js了,搜了一下这个可以实现你说的流式加载。后面空了看看。

    • 童燕群
      评论于 三月 5, 2023 at 00:01:26 CST | 评论链接

      已经同步过来了,并且支持了分页加载pdf。
      在这个镜像:docker pull shentar/talebook:dev,pdf文档标题还有点问题,不能同步书籍的正式名称,而是使用的pdf文件内置的名字,这个问题后面会解决掉。

  27. 1
    评论于 三月 1, 2023 at 11:18:00 CST | 评论链接

    删除重复书籍时提示服务器正在启动中,是这个功能还没做完么

    • 童燕群
      评论于 三月 1, 2023 at 12:32:59 CST | 评论链接

      重启的时间比较长,要等启动好再操作。

      • 1
        评论于 三月 1, 2023 at 13:39:18 CST | 评论链接

        上午11点更新了一下,重新在docker里建立的,现在是主页正常,书籍在线阅读打不开,我看了下talerlog,显示如下:

            Traceback (most recent call last):
              File "/usr/local/lib/python3.9/dist-packages/tornado/http1connection.py", line 823, in _server_request_loop
                ret = await conn.read_response(request_delegate)
              File "/usr/local/lib/python3.9/dist-packages/tornado/http1connection.py", line 183, in _read_message
                header_future = self.stream.read_until_regex(
              File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 356, in read_until_regex
                self._try_inline_read()
              File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 842, in _try_inline_read
                pos = self._read_to_buffer_loop()
              File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 755, in _read_to_buffer_loop
                if self._read_to_buffer() == 0:
              File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 894, in _read_to_buffer
                raise StreamBufferFullError("Reached maximum read buffer size")
            tornado.iostream.StreamBufferFullError: Reached maximum read buffer size

         

  28. 1
    评论于 三月 1, 2023 at 10:34:10 CST | 评论链接

    我用宝塔做的域名https+反向代理+nps到本地nas,静读天下的opds还是不行

    • 童燕群
      评论于 三月 1, 2023 at 12:37:56 CST | 评论链接

      这块就要看看消息卡在哪了。我这里之前是调通了的。

      • 1
        评论于 三月 1, 2023 at 13:35:23 CST | 评论链接

        电脑浏览器里能打开,手机上支持opds的其他软件打开需要登陆,静读打开是空白

      • 1
        评论于 三月 1, 2023 at 16:40:52 CST | 评论链接

        折腾一小天,放弃了,回归http -.-

  29. 匿名
    评论于 二月 27, 2023 at 07:11:00 CST | 评论链接

    导入页面删除图书时会同时删除import文件夹里的文件,但好像没放到回收站里,能给个地方设置吗?
    导入记录的页面有点多,我就都删掉了,但有部分是没导入成功的,删掉后就找不到了

    • 童燕群
      评论于 二月 27, 2023 at 09:38:13 CST | 评论链接

      确实,我自己也遇到这个问题了。后面我做一个弹框:是否只删除导入成功的书籍。

    • 童燕群
      评论于 二月 27, 2023 at 12:49:50 CST | 评论链接

      已经增加。删除时会弹框勾选需要删除源书籍的类别。

      • 匿名
        评论于 二月 28, 2023 at 20:32:49 CST | 评论链接

        谢谢,已更新

  30. 恶魔猎人
    评论于 二月 24, 2023 at 17:28:13 CST | 评论链接

    我使用的绿联的DX4600 NAS安装的docker服务,豆瓣使用eallion/douban-api-rs的镜像来提供服务,是不是要在docker-composer.yml里修改下配置才能生效?

    • 童燕群
      评论于 二月 24, 2023 at 20:11:30 CST | 评论链接

      是的,改一下地址就行,不过我没有用过composer文件,我是手动部署的两个独立的容器。ghcr国内访问不通。

      • 恶魔猎人
        评论于 二月 26, 2023 at 17:22:00 CST | 评论链接

        博主建站备案,是用的自己的私人服务器,还是阿里云等一些公共服务器?
        国家现在的政策,允许拥有公网IP的私人服务器备案吗?

        • 童燕群
          评论于 二月 26, 2023 at 17:32:07 CST | 评论链接

          是阿里云ecs。

  31. 1
    评论于 十二月 25, 2022 at 15:50:55 CST | 评论链接

    在线打开书籍报错

          File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 356, in read_until_regex
            self._try_inline_read()
          File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 842, in _try_inline_read
            pos = self._read_to_buffer_loop()
          File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 755, in _read_to_buffer_loop
            if self._read_to_buffer() == 0:
          File "/usr/local/lib/python3.9/dist-packages/tornado/iostream.py", line 894, in _read_to_buffer
            raise StreamBufferFullError("Reached maximum read buffer size")
        tornado.iostream.StreamBufferFullError: Reached maximum read buffer size

     

    • 童燕群
      评论于 十二月 26, 2022 at 11:47:02 CST | 评论链接

      我看tornado的源码,只有上传时检查max_buffer_size,调用_read_to_buffer,所以这个应该是上传文件时的报错,而不是下载。你再检查一下下载的日志呢?

  32. 小鱼
    评论于 十二月 15, 2022 at 13:44:11 CST | 评论链接

    奇异书屋 | 奇异书屋
    这个如何修改?每次看到这个都好烦

    • 童燕群
      评论于 十二月 16, 2022 at 10:04:54 CST | 评论链接

      系统设置里面,基本信息里面,第一项。

      • 匿名
        评论于 四月 9, 2023 at 22:15:44 CST | 评论链接

        不行啊。改了第一行只是改了talebook标题,不能修改浏览器标签上的奇异书屋

        • bailz1911
          评论于 五月 6, 2023 at 16:06:34 CST | 评论链接

          需要docker服务重启下即可

  33. 匿名
    评论于 十二月 3, 2022 at 04:47:56 CST | 评论链接

    请问下如何更新,我安装后是v2.0.0-89版本很多东西没有

    • 童燕群
      评论于 十二月 3, 2022 at 21:28:32 CST | 评论链接

      保留原data目录,删除container,重新用新镜像创contaner即可:
      docker run -d –name calibre \
      -p 127.0.0.1:12579:80 \
      -v /your/data/dir:/data \
      -E TZ=”Asia/Shanghai” \
      shentar/talebook:latest

  34. 评论于 十一月 1, 2022 at 17:40:29 CST | 评论链接

    手机无法正常阅读,一直缓冲

  35. 匿名
    评论于 十月 16, 2022 at 10:42:54 CST | 评论链接

    感谢分享,请问这个版本可以保存多版本多格式吗,原版本不能保存多版本多格式,有些书名扫描有错误说已存在就不能保存了

    • 评论于 十月 17, 2022 at 10:04:10 CST | 评论链接

      也不行的,同一本书多种格式,应该是原生的Calibre的能力。对于同一本书上传时报已经存在的问题,我一般的做法是,先把已经存在的书改名字,然后上传新的,上传完成后,再把两本书都改成同样的名字。

      • 匿名
        评论于 十月 18, 2022 at 21:06:30 CST | 评论链接

        不能多种格式有点烦,我先试试改名上传书,之前试过原版删除导入记录结果不行

        • 匿名
          评论于 十月 18, 2022 at 21:08:26 CST | 评论链接

          突然发现github上原版作者给我提的建议添加了feacture标签,期待后面的改动

        • 评论于 十月 18, 2022 at 21:17:52 CST | 评论链接

          改名只是最终能保存两本书。我觉得想要一本书两种格式那种,还是要用calibre桌面工具来导入。也不一定就能在web上面呈现,没分析过这个点。

          • 匿名
            评论于 十月 20, 2022 at 15:41:19 CST | 评论链接

            先把书保存进去再说,有书是上中下三本,只能保存一本就比较难受。
            我有一本书有epub和mobi两种格式的,不知道是怎么保存进去的,试过nas停止docker运行,本地复制到文件夹,结果说文件夹不存在,应该是复制进去有权限限制

  36. Panda
    评论于 九月 26, 2022 at 11:31:36 CST | 评论链接

    感谢楼主分享 20220926 亲测有效

  37. 匿名
    评论于 六月 23, 2022 at 10:13:42 CST | 评论链接

    还有一个,在用户管理界面可不可以增加一个添加账号功能

  38. 匿名
    评论于 六月 23, 2022 at 10:12:03 CST | 评论链接

    目前安装已经发现的问题:
    1.跟老版本一样,在imports文件夹下一次性放好多本书网址会直接无响应。(目前解决方案是在docker里新增了一个calibre,只用来自动添加书籍到library里)
    2.opds的问题,静读天下pro7.3-7.5版本打开会提示”org.apache.http.clientprotocolexception”,在librerareader里能正常使用。
    3.添加书籍过程中不会像calibre添加之后自动删除功能。

    • 童燕群
      评论于 六月 23, 2022 at 11:11:49 CST | 评论链接

      1、没办法解决,你这个做法就挺好的,建议两个docker不要同时工作,否则库会被弄坏。
      2、opds不稳定,看你这个报错是https的问题?
      3、在删除导入记录时自动删除书籍,上传的书籍也是成功后自动删除。
      4、没计划做这个,注册用户挺简单的。而且本身就不能公开访问,注册不是常操作。

      • 匿名
        评论于 六月 23, 2022 at 21:06:53 CST | 评论链接

        同样的地址,静读里就报错,librera里就正常使用,所以感觉更像是软件的问题。还有以后如果亚马逊退出中国,opds可以作为备选,关于opds界面可以有不同主题么?

        • 童燕群
          评论于 六月 24, 2022 at 23:58:27 CST | 评论链接

          OPDS只是给出一个索引,最终阅读时,还是下载书籍到本地的,因此OPDS应该做不了什么界面控制。所以跟你用网页浏览下载再导入到静读没有区别。我这里静读是没问题的。

          你可以发一下服务端的日志,或者直接发一下你的站点,我试一下。

          • 匿名
            评论于 十月 18, 2022 at 10:23:25 CST | 评论链接

            http://b.3ren.xyz:10086/opds/
            服务器日志在docker里找么

          • 评论于 十月 18, 2022 at 10:27:22 CST | 评论链接

            在docker的/data目录,如果你映射了这个目录,那么宿主机的目录里面能找到。

          • 匿名
            评论于 十月 19, 2022 at 09:07:30 CST | 评论链接

            有的,talerbook.log?

  39. i
    评论于 六月 14, 2022 at 22:30:22 CST | 评论链接

    比原版的好用,谢谢

评论

邮箱地址不会被泄露, 标记为 * 的项目必填。

8 - 2 = *



You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <img alt="" src="" class=""> <pre class=""> <q cite=""> <s> <strike> <strong>

返回顶部