Fetch rss and send the latest update to telegram. This project is still in active development
- Make sure you have python installed.
- Open command line.
- Install
pip install --upgrade telegram-rss
- Run
python -m telegram_rss
- Add bot token, feeds, user's id, and/or channel's id inside telegram-rss/config.toml
- Run
python -m telegram_rss update
to send initial update (use personal id to send initial update)
If your system support entry_points, you can execute python -m telegram_rss
with telegram-rss
.
Run python -m telegram_rss update
to check and send the latest feeds
bot_token = "987654321:ASDASDASD-1sda2eas3asd-91sdajh28j"
env_token = "TOKEN"
users = [ 123456789,]
channels = [ -123456789,]
groups = [ 1234567890,]
web_page_preview = true
message_delay = 0.05
read_more_button = "Read more"
[[feeds]]
name = "Feed example online"
source = "http://feedparser.org/docs/examples/atom10.xml"
footer_link = "http://feedparser.org/docs/"
channels = [ -123456789,]
only_today = true
[[feeds]]
name = "Feed example local"
source = "c:\\incoming\\atom10.xml"
save_bandwith = false
only_today = false
users = [ 987654321,]
groups = [ 111111111,]
footer = false
[template_data]
author = "Author"
source = "Source"
- Send feed if published today (when we checked)
only_today = true
. - Disable web preview in chat by
web_page_preview = false
. - If you don't want read_more_button under the message, set
read_more_button = ""
. - Don't set message_delay too low, it can be detected as spam.
template.html
is loaded using jinja2, Learn more.
Default template is
<a href="{{ entry.link }}">{{ entry.safe_title }}</a>
<i>{{ author }}</i>: <b>{{ entry.author }}</b>
{{ entry.safe_description }}
<i>{{ source }}</i>: <a href="{{ channel.link }}">{{ channel.safe_title }}</a>
More about objects in template
Just create a new bot account using @BotFather. Don't forget to add the bot as channel's admin
Send / forward a message (user or channel) to @JsonDumpBot
class Entry:
title: str
link: str
description: str
author: str
published: Optional[str]
time: Optional[datetime]
safe_title: str
safe_description: str
class Channel:
title: str
link: str
description: str
safe_title: str
safe_description: str