Skip to main content

feed2exec - programmable feed reader

feed2exec is a simple program that runs custom actions on new RSS feed items (or whatever feedparser can read). It currently has support for writing into mailboxes (Maildir folders) or executing commands, but more actions can be easily implemented through plugins. Email are saved as multipart plain/HTML and can be sent to arbitrary folders.

AGPLv3 licensed pipeline status coverage report feed2exec version on PyPI feed2exec version in stable feed2exec version in unstable Say thanks to the author

Examples

Simple run with no side effects:

feed2exec parse https://www.nasa.gov/rss/dyn/breaking_news.rss --output echo --args '{item.title}'

Saving feed items to a Maildir folder:

feed2exec add "NASA breaking news" https://www.nasa.gov/rss/dyn/breaking_news.rss --folder nasa
feed2exec fetch

This creates the equivalent of this configuration file in ~/.config/feed2exec.ini:

[DEFAULT]
output = feed2exec.plugins.maildir
mailbox = ~/Maildir

[NASA breaking news]
folder = nasa
url = https://www.nasa.gov/rss/dyn/breaking_news.rss

Send new feed items to Transmission:

feed2exec add "Example torrent list" http://example.com/torrents/feed --output transmission --folder /srv/incoming

Send new feed items to Mastodon, using the toot commandline client:

feed2exec add "My site" http://example.com/blog/feed --output exec --args 'toot post "{item.title} {item.link}"'

Send new feed items to Twitter, using the tweet commandline client from python-twitter:

feed2exec add "My site on twitter" http://example.com/blog/feed --output exec --args 'tweet "{item.title:.40s} {item.link:.100s}"'

Show feed contents:

feed2exec add "NASA breaking news" https://www.nasa.gov/rss/dyn/breaking_news.rss --output echo --args "{item.title} {item.link}"
feed2exec fetch

Multiple feeds can also be added with the OPML import command. See the usage document for more information including known issues and limitations.

Installation

This can be installed using the normal Python procedures:

pip install feed2exec

It can also be installed from source, using:

pip install .

It can also be ran straight from the source, using:

python -m feed2exec

The program may also be available as an official package from your Linux distribution.

Source, documentation and issues are available on GitLab.

Why the name?

There are already feed2tweet and feed2imap out there so I figured I would just reuse the prefix and extend both programs at once.

Design information

See the design document for more information about how and why the program was built. The design document also features a comparison with other similar software.

Release files for feed2exec 0.23.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for feed2exec 0.23.0
File Interpreter ABI Platform
feed2exec-0.23.0-py3-none-any.whl Python 3 none any Details

Release files / feed2exec-0.23.0-py3-none-any.whl

Download URL feed2exec-0.23.0-py3-none-any.whl
Size 685.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b657d5d2cc5575ff64c4cadc79d7ebde6ffdb3f682496df9257b8698eb117bab
BLAKE2b-256 checksum
How to use checksums
fe5a6a488b54540a339a9c410cd3d67808629664a2b8bfcd8dabb5e6bbb28f85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.23.0 This release

1 release file

0.22.0

1 release file

0.20.0

1 release file

0.19.0

1 release file

0.18.1

1 release file

0.17.1

1 release file

0.17.0

1 release file

0.16.0

1 release file

0.15.0

1 release file

0.14.0

1 release file

0.13.0

1 release file

0.12.0

1 release file

0.11.0

1 release file

0.10.0

1 release file

0.9.0

1 release file

0.8.0

1 release file

0.7.0

1 release file

0.6.0

1 release file

0.5.1

1 release file

0.5

1 release file

0.4

1 release file

0.3.1

1 release file

0.3

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page