最新版calibre-web(0.6.14)
已经移除了豆瓣元数据接口,而且把元数据接口从javascript
文件移动到了服务器中,使用python
开发。
下载安装calibre-web
这里选择使用linuxserver/calibre-web
,以前使用的technosoft2000/calibre-web
已经不怎么更新:
IMPORTANT: Hello together, since I have almost no time to maintain this project anymore, I hereby discontinue it and recommend you to switch to the better maintained image of linuxserver/calibre-web. Btw. thank you to @OzzieIsaacs and his team that they still work on Calibre Web to make it better and still adding additional features over such a long time
群晖系统中,打开Docker
套件,在注册表中搜索calibre-web
,并选择对应的镜像下载:
下载后在映像中选择对应的容器,点启动就可以开始配置了
配置calibre-web
配置calibre-web
之前,建议先把豆瓣api provider
下载下来。
下载calibre-web豆瓣provider
豆瓣api很早以前就已经不开放给个人用户使用了,目前的豆瓣`API provider`是自己开发的,使用`python`从豆瓣网站上抓取网页并解析成对应格式数据的方式实现。
以前开发了一个`Java`版本(https://github.com/fugary/simple-boot-douban-api)
豆瓣api镜像发布到Docker
仓库可以启动后供javascript
调用,但是新版calibre-web
不再使用javascript
调用外部服务的方式获取元数据,因此根据calibre-web
的metadata_provider
规范开发了python
版本并开源到Github
上:
Github地址:https://github.com/fugary/calibre-web-douban-api
Gitee地址:https://gitee.com/qs/calibre-web-douban-api
使用方式是复制src/NewDouban.py
到calibre-web/cps/metadata_provider/
目录下,重启项目即可,不过在群晖Docker
环境下可以在下载后简单通过挂接的方式把文件直接挂接过去。
下载文件地址:https://gitee.com/qs/calibre-web-douban-api/raw/main/src/NewDouban.py
下载后存到自己的群晖中,我目前存储在/docker/calibre/NewDouban.py
配置calibre-web
在【映像】中选择对应的容器,点【启动】,然后【高级设置】:
一般都要勾选【启用自动重新启动】
配置存储空间,这块很重要
配置装载路径
本地路径 | 容器路径 | 说明 |
---|---|---|
docker/calibre/NewDouban.py | /app/calibre-web/cps/metadata_provider/NewDouban.py | 下载好的豆瓣provider |
本地书籍目录 | /books | 可能需要一个初始metadata.db文件,如果第一次使用可以从这下载一个空的:https://gitee.com/qs/calibre-web-douban-api/blob/main/tests/metadata.db |
本地配置目录 | /config | 配置目录 |
配置端口映射:
配置一些环境变量,语言可以不改,建议增加一个时区:TZ=Asia/Shanghai:
点击【应用】,下一步直到完成启动。
查询元数据
启动完成后可以访问:http://nas_ip:8083
可以登录,默认用户名密码:admin/admin123
新增书籍后可以查询元数据了:
目前的源是:New Douban Books。
常见问题
最近有不少网友说查询的时候卡死,其实是因为内置的google和scholar等其他元数据provider引起的。
要解决这个问题可以以下方案:
- 考虑配梯子等访问外网,并去掉google等元数据选项。
- 直接通过挂接覆盖原来的元数据文件夹,不过这样就只有豆瓣搜索了。
挂接元数据文件夹(NewDoouban.py就在docker/calibre目录下):
本地路径 | 容器路径 | 说明 |
---|---|---|
docker/calibre | /app/calibre-web/cps/metadata_provider | 下载好的豆瓣provider所在目录 |
通过目录挂接之后就不用再挂接docker/calibre/NewDouban.py
文件了。