如何确认自己要订阅的RSS是否是全文RSS?很简单,使用浏览器打开RSS对应的链接,查看是否已经有全部的文章内容,如果是,则为全文RSS。如果仅给出文章摘要,则不是。
全文RSS当然可以按照摘要RSS处理,这样就忽略RSS链接中给出的文章内容,而直接到原链接中获取,只是多耗费一些时间,导致支持的RSS数量下降。如果是摘要RSS,则不能按全文RSS处理,否则会导致文章内容不全。
除了在设置页面设置一个统一的推送日和时间外,每个Recipe都可以自定义一个自己唯一的推送日和推送时间,一旦设置,则统一的推送时间设置将对此Recipe无效。方法是在"我的订阅"的"已订阅"区段,点击某个Recipe后边的圆形按钮,使用弹出的"自定义推送时间"按钮进行设置,可以设置为仅某一天或几天推送,也可以设定一天推送多次。 不过自定义推送时间仅针对内置和上传的Recipe,自定义RSS仅使用统一的推送日和推送时间,如果要设置自定义RSS的推送时间,则可以将其title和url写到一个Recipe里面,再上传即可开始设置。
KindleEar内置7个封面,默认随机选取,也可以配置为按周内日选取。你可以上传自己喜欢的封面来替换这些内置封面,入口在"高级设置"的"上传封面图像"菜单。 如果要单独给某个Recipe设置封面,则需要在其Recipe源代码中添加一个 cover_url 属性,可以为本地文件(如果是相对目录,则相对于KindleEar应用目录)或网络图像,比如:
cover_url = '/temp/mycover.jpg'
cover_url = 'application/images/mycover.jpg'
cover_url = 'https://www.google.com/mycover.jpg'
cover_url = False #no cover image
额外的,如果要自定义报头,则添加一个 masthead_url 属性,格式和 cover_url 一致。
KindleEar不保存密码原文,无法取回密码。在登录时密码验证错误时会有一个"忘记密码?"链接,点击这个链接就可以使用创建账号时登记的email邮箱来重置密码。
如果您的应用是部署在Google cloud平台(GAE),邮箱地址为:xxx@appid.appspotmail.com
(xxx为任意合法字符串,appid为您的应用名)。
如果使用Docker compose部署,邮箱地址为: xxx@domain
,前提是需要开放25端口,并且在DNS服务器正确设置了MX记录。
要使用此功能,先要添加白名单,如果为 *
则允许所有邮件,否则格式为 xx@xx.xx
或 @xx.xx
。
此邮箱将收到的邮件正文转换为邮件附件推送至你注册的Email邮箱。如果邮件中只有链接(多个链接则每行一个),则抓取链接的网页内容制作成电子书然后再推送。
如果邮件发送至 links@domain
或在邮件主题最后添加了标识 !links,则不论邮件内容如何,KindleEar都只会提取邮件中的链接,然后抓取网页,制作成电子书发送至你的Kindle。这个功能最适合将网络连载网页直接发送至Kindle观看。
如果邮件发送至 article@domain
或在邮件主题后添加了标识 !article,则忽略所有链接,直接将内容转换为电子书发送。
推送的电子书默认语言为自定义RSS的语言,如需要其他语种,可以在邮件主题后添加标识 !lang=en (将en替换为您需要的语种代码)。
默认推送至管理员注册的邮箱,如果要推送至其他用户的邮箱,则使用格式: username__xxx@domain
。(注意是双下划线)。
如果将电子书下载链接发送至 book@domain
则KindleEar直接下载对应的电子书并转发至注册的邮箱(注意后缀名有限制,不能发送可能有安全隐患的文件后缀比如exe等,zip文件能发送,但是zip文件内不能包含可能有安全隐患的文件)。
GAE可邮件发送的后缀名列表参见:Mail Python API Overview (book/file/download邮件地址保留为下载电子书使用)。
Amazon不再支持推送mobi文件,如果你有mobi文件(‘.mobi', ‘.prc', ‘.azw', ‘.azw3', ‘.pobi') 需要推送给Kindle,可以以附件形式发送邮件至 convert@domain
,KindleEar将其转换为epub然后再推送给Amazon。
注:mobi文件不能有DRM加密,否则转换失败。
发送至 trigger@domain
,则触发一次手动投递。邮件标题为空或为all则完全等同于网页上的"现在投递"按钮。如果需要推送特定书籍,则在标题上写书籍名字,多个书籍名字使用逗号分隔。
发送至 debug@domain
的邮件则直接抓取邮件中的链接并直接发送HTML文件至管理员邮箱而不是Kindle邮箱。
有些网站需要先注册账户然后登录后才能阅读和下载文章,对于此类网站,则可以在Recipe源代码中添加一个属性:
needs_subscription = True
然后订阅后即可以在对应Recipe的弹出菜单中选择"网站登录信息",可以输入登录账号和密码。
"订阅"是合并推送,将所有按这个选项订阅的Recipe和自定义RSS都合并为一个文件推送,"订阅(单独推送)"是将这个Recipe单独创建一个文件推送,更适合一些生成文件比较大或有特殊推送时间的Recipe。
每个邮件发送服务商对单个邮件的大小都是有限制的,比如GAE限制31.5MB,mailjet现在15MB等,如果附件超过限额,则会导致推送失败。
KindleEar移植了calibre的"Ebook Translator"插件,在抓取外语新闻时可以一并翻译,方便学习外语同时也可以有更广的新闻信息来源。
数据翻译器默认禁用,需要逐个Recipe打开,每个Recipe可以有不同的设置。
在订阅Recipe后,点击右边的弹出按钮,选择"书籍翻译器"按钮即可进入设置。
color:#123456;font-style:italic
。在"我的订阅"页面下方会显示几个书签小应用的链接,也称为Bookmarklet,提供一些便捷的功能。
如果要使用,按住链接然后拖动至浏览器的书签栏即可。
Bookmarklet是每个用户不同的,你当前看到的链接仅应用于你当前登录用户。
在KindleEar订阅: 用于便捷订阅RSS链接,在电脑上打开对应的RSS链接后,点击此Bookmarklet,则将当前URL和title填充到KindleEar的"自定义RSS"里面的文本框,仅此而已,少两次拷贝粘贴的动作,懒人专用。
KindleEar提供了一个通过网页上传recipe文件的功能,在calibre的recipe有 更新 后,你可以仅仅上传您感兴趣的recipe而不需要重新部署KindleEar。
但是如果你希望将recipe文件合并入内置库。
pip install -r requirements.txt
来保证脚本的正常运行。如果你碰到更多问题,可以到 https://github.com/cdhigh/KindleEar/issues 去提交一个issue,然后等待答复,不过在提交问题之前,还是建议先搜索一下别人先前提交的issues,说不定已经有人重复提过了相关问题呢?
如果没有别人提过类似问题,你在提交新问题的时候,建议附上 GAE后台 或你部署的平台的的Logs信息,以便定位问题,也可以得到更快的答复。