KindleEar 搭建教程:推送 RSS 订阅到 Kindle

“Kindle推送”相关阅读

给这篇文章写一条留言

提示:带 * 标记的是必填项。您填写的邮箱地址将会被保密。首次留言将会在通过人工审核后显示。如果是提出问题,请务必提供尽可能多信息,这有助于他人更好地理解你所提出的问题。

小伙伴们写下了 802 条留言

    • 参考本文第三部分第 2 条小贴士:访问 https://console.cloud.google.com,点击左上角的菜单,点击菜单中的“数据存储”,然后在“按种类查询”的标签项下方的“种类”中,选择“KeUser”,可以看到全部用户名。

  1. FAQ中“如何修改多本书籍合并后的封面?”问题的回答中提到的config.py在哪里?

    FAQ中“有的网站需要登陆才能阅读文章的问题如何解决?”中说的“可以仿照books目录下的预置书籍,增加一个新的py文件,然后设置这几个属性:

    needs_subscription :设置为True
    login_url :为此网站的登陆网页URL”

    needs_subscription和login_url 都在哪里?

    • config.py 就在 KindleEar 源代码根目录下。needs_subscriptionlogin_url 这两个属性你可以在 books 目录下的 base.py 中看到,但是要使用这两个属性需要新建一个继承 BaseFeedBook 类的 py 文件,然后设置这两个属性。

      • 谢谢你的回复。我刚在github看到了。但我完全不懂这些,所以还是放弃。

        再次感谢你的回复。

        我还有一个问题,如果添加的几个源更新的频率不同,更新频率低的会不会经常有重复内容?还是这个源不更新的话,那这次的推送就没有这个源的内容?

        • KindleEar 是按照“最旧文章”设置抓取源内容,如果源的内容在这个区间内没有更新就不会抓取。但是也有例外,比如源所有者对内容做了修改导致日期改变,可能会被重复抓取。另外根据实际使用情况看,抓取还会受源的条数限制的影响,比如某个源只输出 20 条,在你设置的抓取时间区间内,即便更新超过了 20 条 也只能抓取最新的 20 条。

  2. 添加RSS过多导致内存占用过大,程序被自动终止。
    打开module-worker.yaml,将instance_class值修改为B4,然后重新上传。

    这个怎么修改?

    • GAE 免费版有资源限制,不建议添加过多 RSS。

      根据个人经验,每天投递一次,源超过十个,读起来就要消耗过多时间,假设对其中几篇文章感兴趣做深入阅读,一天的业余时间可能都不够用。建议每次少添加几个,然后根据之后的阅读情况筛选,最终精选出几个源。

  3. “结算状态
    免费(每日支出限额为 $0.00,提升额度为 ) 设置
    配额每 24 小时重置一次。下次重置时间:7 小时后 ”
    已恢复正常,再有这问题的不用问了,等着就会好的

  4. “您的应用已达到或接近免费资源限额。您应该启用结算功能以避免服务中断。”
    介个怎么破,才用一天,昨天修改了几次RSS源,手动推了几次,确认了了一下内容和效果,今天就没自动推,一看是这样显示滴

  5. 您好,投递状态显示 wrong SRC_EMAIL,添加发送邮箱地址时显示“以下电子邮件地址不存在”是哪里出了问题?

    • 错误日志代码如下(完全看不懂)

      I GET 404 123 B 1.3 s Unknown /_ah/start GET 404 123 B 1.3 s Unknown 5aff008a4d00ff02ac85531ce3c70001627e7365652d74686f7567682d69740001776f726b65723a31000100
      0.1.0.3 – – [19/May/2018:10:22:05 +0800] “GET /_ah/start HTTP/1.1” 404 123 – “-” “0.1.worker.see-though-it.appspot.com” ms=NaN cpu_ms=2004 cpm_usd=1.787e-8 loading_request=1 instance=00c61b117ca53ab507b02a600246695dadaf57ac95ffc3e5431e84fb32379adb873159778e5c73 app_engine_release=1.9.54 trace_id=f14557f15e7c810f7f54208451d50e5d

  6. 第七个步骤
    分别输入下面两条命令将 KindleEar 上传到 GAE:

    C:\python27\python.exe appcfg.py update C:\kindleear\app.yaml C:\kindleear\module-worker.yaml
    C:\python27\python.exe appcfg.py update C:\kindleear

    这到底是有多少条命令??
    输入就变成这样了
    zz1988819@aben-819:~$ C:\python27\python.exe appcfg.py update
    -bash: C:python27python.exe: command not found

      • 好的 谢谢,我选择的自动上传。我推送的状态显示over quota是啥情况

        • 免费的 GAE 有配额限制,出现 Over Quota 这个提示可能是因为你推送太频繁,或添加的订阅太多内容导致超出限额。出现错误后 GAE 会记录详细日志,你可以从菜单进入日志查看详情。

  7. 感谢版主,已经可以更新了。其实应该是我操作的问题,和脚本应该没有关系,我有2个Appid,名字很像,更新的应该是1,但我进入的网址用的却是2,所以一直看的都是原来的版本,给版主添麻烦了,Sorry!!!

  8. 用的web shell原版本1.24.2,今天想更新一下,使用
    ~$ uploader.sh
    已存在 KindleEar 源码,是否更新?[y/N]y
    fatal: ‘./KindleEar’ does not appear to be a git repository
    fatal: Could not read from remote repository.
    出现错误,要如何解决,

    • 这是代码的问题,没有判断当前是否存在 KindleEar 文件夹。现在已经修复,重新运行一次命令即可。

      • 你好,再次运行如下命令
        rm -f uploader.sh* && \
        wget https://raw.githubusercontent.com/kindlefere/KindleEar-Uploader/master/uploader.sh && \
        chmod +x uploader.sh && \

        ./uploader.sh
        – ‘uploader.sh’ saved [1803/1803]
        已存在 KindleEar 源码,是否更新?[y/N]y
        fatal: ‘./KindleEar’ does not appear to be a git repository
        fatal: Could not read from remote repository.

        还是不行啊。

        • 谢谢反馈,很不好意思,这是代码的错误。又仔细检查修改了一下代码并测试了两次,这次应该没问题了。再重新运行一遍看看。

          • 版主,感谢你的更新,再次下载并运行了更新脚本,期间无报错,运行后还是1.24.2,还是不能升级
            ———————————————————————————-
            2018-04-19 21:09:26 (34.4 MB/s) – ‘uploader.sh’ saved [1812/1812]
            已存在 KindleEar 源码,是否更新?[y/N]Y
            Already up-to-date.
            当前的 Gmail 为:go***@gmail.com
            当前的 APPID 为:go***
            是否修改 APP 信息? [y/N] N
            09:09 PM Host: appengine.google.com
            09:09 PM Application: go***; version: 1

  9. 我设置好了,到了登录 KindleEar 这一步,网站上没有注册账号的地方,那要用什么账号登录呢?
    试过用谷歌邮箱不行,请求各位书友帮助:)

  10. 你好,请问自己添加的rss怎么能知道是不是可以进行推送呢?网站里边的订阅是没有问题的

  11. 投递状态显示 wrong SRC_EMAIL是什么原因呢,我按照上面的方法做了,但还是不行。。

      • 我发现了问题所在,小贴士固然没错,但其实是我在控制台输入email的时候发生错误,现在问题解决了。