A website application running in Google app engine, deliver rss news to your kindle. generate mobi using python, multilanguages supported.

Overview

Readme of english version refers to Readme_EN.md

简介

这是一个运行在Google App Engine(GAE)上的Kindle个人推送服务应用,生成排版精美的杂志模式mobi/epub格式自动每天推送至您的Kindle或其他邮箱。

此应用目前的主要功能有:

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

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

标准部署步骤

  1. 申请google账号 并暂时 启用不够安全的应用的访问权限 以便上传程序。

  2. 创建一个Application,注意不用申请GCE,那个是60天试用的,而GAE是限额范围内永久免费的。

  3. 安装 Python 2.7.x

  4. 安装 GAE SDK

  5. 下载 KindleEar ,解压到一个特定的目录。

  6. 在以下三个文件中修改一些参数:

文件 待修改内容 说明
app.yaml application 你的ApplicationId
module-worker.yaml application 你的ApplicationId
config.py SRC_EMAIL 创建GAE工程的GMAIL邮箱
config.py DOMAIN 你申请的应用的域名

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

  1. 转到GAE SDK安装目录(默认为:C:\Program Files\Google\google_appengine)

  2. 部署命令:
    8.1 使用appcfg.py:

    • c:\python27\python.exe appcfg.py update kindleear目录\app.yaml kindleear目录\module-worker.yaml
    • c:\python27\python.exe appcfg.py update kindleear目录

8.2 使用gcloud:
* 删除app.yaml和module-worker.yaml开头的两行:application / version
* gcloud auth login
* gcloud config set project 你的ApplicationId
* gcloud app deploy --version=1 KindleEar目录\app.yaml KindleEar目录\module-worker.yaml
* gcloud app deploy --version=1 KindleEar目录
* [如果服务器没有正常创建数据库索引,可能需要手动执行如下语句]
gcloud datastore indexes create KindleEar目录\index.yaml

  1. 全部完成后就可以尝试打开域名:
    http://appid.appspot.com (appid是你申请的application名字)
    比如作者的网站域名为:http://kindleear.appspot.com/
    注:初始用户名为 admin,密码为 admin,建议登录后及时修改密码。

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

简化的部署步骤(推荐)

假如你不想安装python和GAE SDK,则可以选择如下两种方法之一:

  1. 参考代码库 https://github.com/bookfere/KindleEar-Uploader ,里面有详细的教程和服务器脚本,也很简单。

  2. 使用本机脚本:
    2.1 下载KindleEar 并解压(改目录名为KindleEar)。
    2.2 下载KindleEar-Uploader 并解压。
    3.3 将KindleEar目录放到Uploader目录下,双击uploader.bat即开始上传,根据提示输入你的相关信息即可,在第一次成功部署之后,适用uploader再次升级KindleEar则不需要再次输入。
    此uploader仅适用于Windows系统。

许可协议

KindleEar is licensed under the AGPLv3 license.
大体的许可框架是此应用代码你可以任意使用,任意修改,可以商用,但是必须将你修改后的代码开源并保留原始版权声明。

主要贡献者

Dynamic Twitter banner, to show off your spotify status. Banner updated every 5 minutes.

Spotify Twitter Banner Dynamic Twitter banner, to show off your spotify status. Banner updated every 5 minutes. Installation and Usage Install the dep

Sunrit Jana 23 Jan 05, 2023
Random-backlog-tweet - Pick a page from a sitemap at random and prep a tweet button for it

Random-backlog-tweet - Pick a page from a sitemap at random and prep a tweet button for it

Paul O'Leary McCann 0 Dec 01, 2022
Yes, it's true :yellow_heart: This repository has 326 stars.

Yes, it's true! Inspired by a similar repository from @RealPeha, but implemented using a webhook on AWS Lambda and API Gateway, so it's serverless! If

510 Dec 28, 2022
Collection of script to manage WLED devices

Collection of script to manage WLED devices

Daniel Poelzleithner 4 Sep 26, 2022
Example of a discord bot in Python

discordbot.py Example of a discord bot in Python Requirements Python 3.8 or higher Discord Bot Setting Up Clone this repo or download the files Rename

Debert Jamie 1 Oct 23, 2021
• Create Your Own YouTube Info Api.

youtube_data_api • Create Your Own YouTube Info Api. Deploy How to Use https://{ Heroku App Name }.herokuapp.com/api?link={YouTube link} In local Host

lokaman chendekar 12 Oct 02, 2022
Gdrive-python: A wrapping module in python of gdrive

gdrive-python gdrive-python is a wrapping module in python of gdrive made by @pr

Vittorio Pippi 3 Feb 19, 2022
This project checks the weather in the next 12 hours and sends an SMS to your phone number if it's going to rain to remind you to take your umbrella.

RainAlert-Request-Twilio This project checks the weather in the next 12 hours and sends an SMS to your phone number if it's going to rain to remind yo

9 Apr 15, 2022
Fully Automated Omegle Chatbot

omegle-bot tutorial features fast runs in background can run multiple instances at once Requirement Run this command in cmd, terminal or PowerShell (i

6 Aug 07, 2021
🤖 A fully featured, easy to use Python wrapper for the Walmart Open API

Wapy Wapy is a fully featured Python wrapper for the Walmart Open API. Features Easy to use, object oriented interface to the Walmart Open API. (Produ

Carlos Roso 43 Oct 14, 2022
:lock: Python 2.7/3.X client for HashiCorp Vault

hvac HashiCorp Vault API client for Python 3.x Tested against the latest release, HEAD ref, and 3 previous minor versions (counting back from the late

hvac 1k Dec 29, 2022
Bearer API client for Python

Bearer Python Bearer Python client Installation pip install bearer Usage Get your Bearer Secret Key and integration id from the Dashboard and use the

Bearer 9 Oct 31, 2022
vk Bot because of which everyone will lag

VK-crash-bot open cmd and write: "pip install vk-api" To configure the bot, you need to open main.py and set the value to such variables as "token" an

NotQuki 0 Jun 05, 2022
🚀🔥使用Python连接阿里云盘, 实现了官方大部分功能 👍👍

aligo 🚀 🔥 使用Python连接阿里云盘, 实现了官方大部分功能 👍 👍 为了完善代码提示, 方便大家代码书写, aligo 引入了一些 python 3.8 的新特性, 所以要求 python = 3.8.* pip install aligo 或 pip install ali

455 Jan 08, 2023
Library written in Python that wraps Halo Infinite API.

haloinfinite Library written in Python that wraps Halo Infinite API. Before start It's unofficial, reverse-engineered, neither stable nor production r

Miguel Ferrer 4 Dec 28, 2022
NoChannelBot - Bot bans users, that send messages like channels

No Channel Bot Say "STOP" to users who send messages as channels! Bot prevents u

Andrew 10 Oct 05, 2022
A basic implementation of the Battlesnake API in Python

Getting started with Battlesnake and Python This is a basic implementation of the Battlesnake API in Python. It's a great starting point for anyone wa

Gaurav Batra 2 Dec 08, 2021
A Discord/Xenforo bot!

telathbot A Discord/Xenforo bot! Pre-requisites pyenv (via installer) poetry Docker (with Go version of docker compose enabled) Local development Crea

Telath 4 Mar 09, 2022
A free and open-source SMS/Call bombing application

TBOMB V0.1 A free and open-source SMS/Call bombing application NOTE: For Termux To use the bomber type the following commands in Termux: pkg install g

ᴀɴᴋɪᴛ ᴋᴜᴍᴀʀ 2 Dec 07, 2021
Reverse engineered connection to the TradingView ticker in Python

Tradingview-ticker Reverse engineered connection to the TradingView ticker in Python. Makes a websocket connection to the Tradeview website and receiv

Aaron 20 Dec 02, 2022