calibre和cpolar搭建一个私有的网络书库
Kindle中国电子书店停运不要慌,十分钟搭建自己的在线书库随时随地看小说!
文章目录
- Kindle中国电子书店停运不要慌,十分钟搭建自己的在线书库随时随地看小说!
- 1.网络书库软件下载安装
- 2.网络书库服务器设置
- 3.内网穿透工具设置
- 4.公网使用kindle访问内网私人书库

6月底,亚马逊公司旗下Kindle中国电子书店停止运营,此后用户无法再购买新的电子书,只能下载和阅读已购买的电子书。虽然大家总是调侃kindle和平板电脑哪个更适合用来盖泡面,但还有很多人还是更喜欢用kindle的墨水屏来看电子书的,如今不能直接下载电子书还是挺影响使用体验的。

但实际上,只要大家看了我们今天分享的教程,就能快速而简单的在自己的电脑上,借助calibre和cpolar搭建一个私有的网络书库,即便亚马逊的服务停止了,我们依然能够在任何有网络的地方随时下载电子书到自己的kindle上,下面就来看看具体如何操作吧!
1.网络书库软件下载安装
首先,自然是安装cpolar和calibre。这两个软件的下载地址如下:
- Cpolar:https://www.cpolar.com/download
- Calibre:https://calibre-ebook.com/download_windows
有时候calibre的网站会出现下载错误,但我们也可以在360软件管家中找到这款软件,并进行安装


2.网络书库服务器设置
当cpolar和calibre都安装完成后,我们就需要对这两个软件进行设置,使其成为kindle的书库服务器。首先是calibre。打开calibre的主界面,我们能在软件主界面上方的快捷栏中找到“连接/共享”选项。点击就能看到“启动内容服务器”的选项,单击就能开启。

接着我们再次点击“连接/共享”选项,就会发现出现了本地电脑的IP地址、端口号及“http”字样,这时就说明了calibre已经成为一个能够为kindle访问的电子书服务器。由于没有进行内网穿透,我们只能通过本地局域网IP+端口号(http://192.168.XXX.XXX:8080)的模式访问calibre,因此这时的calibre只能被局域网内的设备访问到。
要想让本地电脑上安装的calibre能被公共互联网上的kindle访问到,我们还需要使用cpolar,生成一条内网穿透数据隧道,简单说就是赋予calibre一个http格式的网络地址。
3.内网穿透工具设置
首先我们打开cpolar的Web-UI界面,可以在Windows的开始菜单里找到cpolar快捷方式,也可以在浏览器的地址栏里输入localhost:9200直接打开cpolar的Web-UI界面。


在输入cpolar的账号密码后,我们就进入cpolar主页面。在这里,我们选择主界面左侧“隧道管理”项下的“创建隧道”选项。在“创建隧道”页面,我们需要对打算建立的内网穿透数据隧道进行几项设置。
首先是“隧道名称”,为了方便我们识别不同隧道的用途,我们将这条隧道命名为“kindle”;
下一项“协议”则选择“http”;其后的“本地地址”则填入开启calibre“内容服务器”时显示的端口号(这个例子中端口号为8080);
下一项“域名类型”我们可以选择“随机域名”(当然,如果是VIP客户,可以选择二级子域名和自定义域名,将这条数据隧道固定下来,避免随机域名每隔24小时重置一次的问题);
最后的“地区”则选择实际使用地区即可。

在以上设置都完成后,就可以点击下方的绿色“创建”按钮,生成能够从公共互联网连接本地calibre的内网穿透数据隧道。

而这条内网穿透数据隧道的入口(也就是公共互联网地址),则可以在“状态”项下的“在线隧道列表”页面看到。

4.公网使用kindle访问内网私人书库
最后,我们可以在Kindle的网页浏览器中,输入cpolar为本地calibre端口生成的公网地址,直接连接到局域网电脑上的calibre,调取自己喜欢的书籍。

当然,此例中我们使用的是随机域名模式,因此每隔24小时连接本地calibre的地址就会变化,但我们可以通过固定二级子域名或使用自定义域名方式,将连接本地电脑calibre的内网穿透数据隧道固定下来,使其可以长期稳定存在,甚至将其作为商业用途。

Kindle在推广电子书阅读方面发挥了重要作用,为人们提供了便捷、轻巧且大容量的阅读方式。它改变了人们的阅读习惯,为读者带来了更多的选择和便利。同时,Kindle的推出也激发了整个电子书市场的发展,让更多的人开始接触和使用电子书。如今,虽然它的在线电子书下载服务退出了,但本体还能使用不是吗?简单的利用几个软件,就能让你手中的kindle继续发光发热,赶快动起来吧!
转载自cpolar极点云文章:Kindle中国电子书店停运不要慌,十分钟搭建自己的在线书库随时随地看小说!
相关文章:
calibre和cpolar搭建一个私有的网络书库
Kindle中国电子书店停运不要慌,十分钟搭建自己的在线书库随时随地看小说! 文章目录 Kindle中国电子书店停运不要慌,十分钟搭建自己的在线书库随时随地看小说!1.网络书库软件下载安装2.网络书库服务器设置3.内网穿透工具设置4.公网…...
c++ nlohmann::json 中文支持
c nlohmann::json 是当前排名第一人库,但是在解析中文时会有问题 std::string to_utf8(std::wstring& wide_string) {static std::wstring_convert<std::codecvt_utf8<wchar_t>> utf8_conv;return utf8_conv.to_bytes(wide_string); }void test_nl…...
vue3 | defineExpose的使用
简介 使用<script setup>的组件是默认关闭的————即通过模板引用或者$parent链获取到的组件的公开实例,不会暴露在任何在<script setup>中声明的绑定 换句话说,如果一个子组件使用的是选项式 API 或没有使用 <script setup>&…...
PaddleSeg学习3——使用PP-LiteSeg模型对道路进行分割
使用PP-LiteSeg模型对道路进行分割 1 准备环境2 样本3 准备config文件4 模型训练5 模型预测5.1 python预测5.2 C++预测5.3 预测结果展示1 准备环境 参考上一篇:Windows PaddleSeg c++部署 2 样本 车道线分割实战的智能车数据集 #标签 背景:0, 0.05 单实线-黄...
时序数据库的关键技术点总结
总结时序数据库的关键技术点 内存 SQL解析LSM Tree(WAL)skiplist内存合并,有序落盘LRU 时序文件索引缓存 存储层 时间分区设备分区 索引文件 时间戳范围索引布隆过滤器索引brin 索引btree 索引多层索引 数据文件(tskv…...
【ROS】机器人使用Nomachine进行远程控制
官网:NoMachine - Free Remote Desktop for Everybody 支持的系统: WindowsMacLinux 树莓派其他ARM板IOSAndroid 由于网速问题,可以使用我下载好的:(8.8.1_1) 链接:https://pan.baidu.com/s/…...
Jmeter系列-定时器Timers的基本介绍(11)
简介 JMeter中的定时器(Timer)是一种重要的元件,用于模拟用户在不同时间间隔内发送请求的场景。通过使用定时器,可以模拟负载、并发和容量等不同情况下的请求发送频率。 使用定时器 可以在取样器下添加定时器,这样定…...
【华为OD机试python】求满足条件的最长子串的长度【2023 B卷|100分】
【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度, 字符串本身是其最长的子串,子串要求: 1、 只包含1个字母(a~z, A~Z),其余必须是数字; 2、 字母可以…...
iOS技术博主指南:填写苹果应用上架中的隐私政策信息
摘要:本文将详细介绍iOS技术博主在苹果应用上架过程中如何填写隐私政策信息。博主可以通过App Store Connect为应用程序提供隐私政策网址和用户隐私选项网址,并了解如何填写隐私政策文本。本文将提供步骤和注意事项,帮助博主顺利完成隐私政策…...
Spring事件机制之ApplicationEvent
博主介绍:✌全网粉丝4W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…...
【操作系统笔记】内存寻址
物理寻址 主存(内存) 计算机主存也可以称为物理内存,内存可以看成由若干个连续字节大小的单元组成的数组每个字节都有一个唯一的物理地址(Physical Address)CPU访问内存前,先拿到内存地址,然后…...
webpack自定义loader解析指定后缀名文件
案例: webpack自定义loader解析.chenjiang后缀名的文件 整体目录: chenjiangLoader.js文件代码 // 正则匹配script标签中的内容 const REG /<script>([\s\S]*)<\/script>/;module.exports function (source) {const __source source.…...
基于Kintex UltraScale系列FPGA KU060/KU115高性能PCIe数据预处理载板(5GByte/s带宽)
PCIE702是一款基于PCIE总线架构的高性能数据预处理FMC载板,板卡具有1个FMC(HPC)接口,1路PCIe x8主机接口、1个RJ45千兆以太网口、2个QSFP 40G光纤接口。板卡采用Xilinx的高性能Kintex UltraScale系列FPGA作为实时处理器࿰…...
Cesium 地球(2)-瓦片创建
Cesium 地球(2)-瓦片创建 QuadtreePrimitive代码执行4个步骤: step1: update()step2: beginFrame()step3: render()step4: endFrame() 但并不是瓦片的创建步骤。 1、创建 QuadtreeTile 基于 step3: render() step3: render()┖ selectTilesForRendering()在 selectTilesFo…...
Selenium-介绍下其他骚操作
Chrome DevTools 简介 Chrome DevTools 是一组直接内置在基于 Chromium 的浏览器(如 Chrome、Opera 和 Microsoft Edge)中的工具,用于帮助开发人员调试和研究网站。 借助 Chrome DevTools,开发人员可以更深入地访问网站…...
【C++从0到王者】第三十一站:map与set
文章目录 一、关联式容器二、pair键值对三、set1. set的介绍2. set的部分接口以及应用3. count4. lower_bound和upper_bound5. equal_range6. multiset容器 四、map1. map的介绍2. map的一些常见接口以及使用3. map的[]运算符重载4. 使用map改进一些题5. multimap容器 五、map和…...
生产消费者模型的介绍以及其的模拟实现
目录 生产者消费者模型的概念 生产者消费者模型的特点 基于阻塞队列BlockingQueue的生产者消费者模型 对基于阻塞队列BlockingQueue的生产者消费者模型的模拟实现 ConProd.c文件的整体代码 BlockQueue.h文件的整体代码 对【基于阻塞队列BlockingQueue的生产者消费者模型…...
Unity ML-Agents默认接口参数含义
下面的含义就是训练中常用的yaml文件: behaviors:waffle:trainer_type: ppo #训练器类型,默认ppo。还有sac和pocahyperparameters:batch_size: 64 # 梯度下降每次迭代的经验数。应确保该值总是比 buffer_size小几倍。 在使用连续动作的情况下&#x…...
【python数据分析基础】—pandas中loc()与iloc()的介绍与区别
文章目录 前言一、loc[]函数二、iloc[]函数三、详细用法loc方法iloc方法 总结共同点不同点 前言 我们经常在寻找数据的某行或者某列的时常用到Pandas中的两种方法iloc和loc,两种方法都接收两个参数,第一个参数是行的范围,第二个参数是列的范…...
ad18学习笔记十一:显示和隐藏网络、铺铜
如何显示和隐藏网络? Altium Designer--如何快速查看PCB网络布线_ad原理图查看某一网络的走线_辉_0527的博客-CSDN博客 AD19(Altium Designer)如何显示和隐藏网络 如何显示和隐藏铺铜? Altium Designer 20在PCB中显示或隐藏每层铺铜-百度经验 AD打开与…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...
MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释
以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块࿰…...
在Spring Boot中集成RabbitMQ的完整指南
前言 在现代微服务架构中,消息队列(Message Queue)是实现异步通信、解耦系统组件的重要工具。RabbitMQ 是一个流行的消息中间件,支持多种消息协议,具有高可靠性和可扩展性。 本博客将详细介绍如何在 Spring Boot 项目…...
OpenGL-什么是软OpenGL/软渲染/软光栅?
软OpenGL(Software OpenGL)或者软渲染指完全通过CPU模拟实现的OpenGL渲染方式(包括几何处理、光栅化、着色等),不依赖GPU硬件加速。这种模式通常性能较低,但兼容性极强,常用于不支持硬件加速…...
篇章一 论坛系统——前置知识
目录 1.软件开发 1.1 软件的生命周期 1.2 面向对象 1.3 CS、BS架构 1.CS架构编辑 2.BS架构 1.4 软件需求 1.需求分类 2.需求获取 1.5 需求分析 1. 工作内容 1.6 面向对象分析 1.OOA的任务 2.统一建模语言UML 3. 用例模型 3.1 用例图的元素 3.2 建立用例模型 …...
