Rory

自动推送RSS至你的Kindle——KindleEar配置指南
前言双十一的时候入了一台Kindle Paper White 4,刚拿到手就开始折腾。没想到一连上wifi,Ama...
扫描右侧二维码阅读全文
15
2018/12

自动推送RSS至你的Kindle——KindleEar配置指南

前言

双十一的时候入了一台Kindle Paper White 4,刚拿到手就开始折腾。没想到一连上wifi,Amazon就自动帮我更新了系统,从出厂原版的5.10.0.1升级到了5.10.1.2。
(╯°A°)╯︵○○○
最新的系统是没办法越狱的。于是开始折腾起了RSS订阅。

说明

KindleEar 是一款开源的 Python 程序,由网友 cdhigh 发起。
Gayhub项目地址:https://github.com/cdhigh/KindleEar
KindleEar是一个运行在Google App Engine(GAE)上的Kindle个人推送服务应用,生成排版精美的杂志模式mobi/epub格式自动每天推送至您的Kindle或其他邮箱。
KindleEar-RSS.png
此应用目前的主要功能有:

  • 支持类似Calibre的recipe格式的不限量RSS/ATOM或网页内容收集
  • 不限量自定义RSS,直接输入RSS/ATOM链接和标题即可自动推送
  • 多账号管理,支持多用户和多Kindle
  • 生成带图的杂志格式mobi或带图的有目录epub
  • 自动每天定时推送
  • 强大而且方便的邮件中转服务
  • 和Evernote/Pocket/Instapaper等系统的集成

注:如果您要求不高,自定义RSS推送功能足以应付一般应用,如果要求排版和完美,可以参照books目录下的文件范本自己添加一个文件再重新上传即可,books目录下的书籍文件都不是随意预置的,每个文件都至少演示一个适用的books编写技巧。 在您懂python的前提下,您可以完全的操控网页,可以生成您需要的最完美的MOBI/EPUB文件。

安装

目前KindleEar一共有两种安装方式

简化部署安装步骤(推荐)

开通Google Cloud Platform

申请Google账号,开通GCP平台并暂时 启用不够安全的应用的访问权限 以便上传程序。
chrome_2018-12-15_23-31-04.png

创建项目

创建一个Application,注意不用申请GCE,那个是60天试用的,而GAE是限额范围内永久免费的。
并且记录下你的项目的API,接下来要用的。
chrome_2018-12-15_23-51-56.png
打开GCP自带的Cloud Shell
chrome_2018-12-15_23-38-21.png

gcloud beta app create

命令执行后会出现 Which region would you like to choose? 字样,询问选择应用的位置,输入数字 1,稍等片刻即可完成 GAE 应用的创建。

上传项目至APP ENGINE

同样打开GCP的Cloud Shell,输入:

rm -f uploader.sh* && \
wget https://raw.githubusercontent.com/kindlefere/KindleEar-Uploader/master/uploader.sh && \
chmod +x uploader.sh && \
./uploader.sh

按照脚本的提示,输入你的 Gmail 地址和准备好的 APPID,等待上传成功即可。

标准部署步骤(不推荐)

  1. 申请google账号 并暂时 启用不够安全的应用的访问权限 以便上传程序。
  2. 创建一个Application
  3. 安装 Python 2.7.x。
  4. 安装 GAE SDK。
  5. 下载 KindleEar ,解压到一个特定的目录。
  6. 在以下三个文件中修改一些参数:
    chrome_2018-12-15_23-56-49.png

如果使用gcloud部署,需要注释掉yaml文件中的application/version项。

  1. 转到GAE SDK安装目录(默认为:C:Program FilesGooglegoogle_appengine)
  2. 部署命令: 8.1 使用appcfg.py:

    c:python27python.exe appcfg.py update kindleear目录app.yaml kindleear目录module-worker.yaml
    c:python27python.exe appcfg.py update kindleear目录 8.2 使用gcloud:
    `"C:Program FilesGoogleCloud SDKgoogle-cloud-sdkbingcloud.cmd" app deploy --version=1 KindleEar目录app.yaml KindleEar目录module-worker.yaml
    `"C:Program FilesGoogleCloud SDKgoogle-cloud-sdkbingcloud.cmd" app deploy --version=1 KindleEar目录

设置推送

登陆KindleEar

全部完成后就可以尝试打开域名:
http://appid.appspot.com (appid是你申请的application名字)
注:初始用户名为 admin,密码为 admin,建议登录后及时修改密码。
chrome_2018-12-16_00-00-42.png

设置KINDLE E-MAIL

设置里面的KINDLE E-MAIL是需要去亚马逊设置的,各位记得把推送用的邮箱加入白名单。
用浏览器登录亚马逊账户,在展开的菜单中找到“管理内容和设备”这个分类。
依次点击【管理我的内容和设备】和【我的设备】选项卡,
在页面中找到【电子邮箱】这一项,有个“*@kindle.cn”字样的邮箱地址,这就是接收推送文档的收件人。
点击【设置】选项卡,
找到个人文档设置,将发件人添加到白名单中:
chrome_2018-12-16_00-16-54.png

设置SMTP服务

有一点需要注意的是,GOOGLE家对端口限制得很厉害。之前用过一段时间GOOGLE的服务器,想要部署邮箱服务器,前后折腾了几天,遇到了各种莫名其妙的BUG。最后才发现原来GOOGLE把SMTP服务器常用的25,465,587端口全封了,你自己在GCP上网络里面把端口开放也是无效的。Google这个老贼,Gmail他自己也是用587端口的,测试下来只有Gmail自己的SMTP服务和Sendgrid在GCP的服务器上是可行的,其余的都被封了。
所以各位要注意设置推送的SMTP服务器需要是Gmail的。

博主Gmail出了点小问题,因此用的是Sendgrid,各位可以根据需要去申请

更详细一点的说明请参照Github上的 FAQ 或作者网站的 FAQ 链接。有关部署失败,部署后"internal server error"等问题都有解释。
不建议使用GAE Launcher部署KindleEar,除非你知道怎么设置Extra Flags等参数。

Last modification:February 3rd, 2019 at 12:15 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment