Skip to main content

Read RSS/Atom feeds in your favourite, maildir-compatible email client.

https://img.shields.io/pypi/v/feed2maildir.svg?style=flat-square https://img.shields.io/pypi/dm/feed2maildir.svg?style=flat-square

Requirements

  • Python 3.2+

  • feedparser

  • python-dateutil

Usage

Just run feed2maildir, which should be placed in your $PATH by setup.py. You will need a JSON configuration file at $HOME/.f2mrc that looks like this:

{
    "db": "~/.f2mdb",
    "maildir": "~/mail/feeds",
    "feeds": {
        "Coding Horror": "http://feeds.feedburner.com/codinghorror/",
        "Commit Strip": "http://www.commitstrip.com/en/feed/",
        "XKCD": "http://xkcd.com/rss.xml",
        "What If?": "http://what-if.xkcd.com/feed.atom",
        "Dilbert": "http://feed.dilbert.com/dilbert/daily_strip?format=xml",
        "BSDNow": "http://feeds.feedburner.com/BsdNowOgg"
    }
}

Note that the last element in a dict must not be followed by a comma, because Python’s json.loads() says so.

There are a bunch of command-line arguments to overwrite the config file:

optional arguments:
    -h, --help  show this help message and exit
    -c <file>   override the config file location (~/.f2mrc)
    -d <file>   override the database file location (~/.f2mdb)
    -m <dir>    override the maildir location (None)
    -s          strip HTML from the feeds
    -S <prog>   strip HTML from the feeds using an external program
    -l          just write the links without the update

To check for updates regularly, just toss it into cron to run once every hour or so.

Strip HTML

feed2maildir can strip the HTML tags from the feed using a built-in HTML stripper (option -s) or using an external program (option -S <prog>)

In this last case, the program must read the HTML from it standard input and return it stripped via the standard output.

The <prog> can be the name of a program or it can be a full shell command. In that case don’t forget to quote the full command.

Here is an example of using pandoc to convert HTML to Markdown

feed2maildir -S 'pandoc --from html --to markdown_strict'

Metadata

Release files for feed2maildir 0.4.0

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

Source distribution (sdist)

Source distribution for feed2maildir 0.4.0
File Size Uploaded
feed2maildir-0.4.0.macosx-10.12-x86_64.tar.gz 10.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for feed2maildir 0.4.0
File Interpreter ABI Platform
feed2maildir-0.4.0-py3.8.egg Legacy Egg format - - Details
feed2maildir-0.4.0-py2.7.egg Legacy Egg format - - Details

Total release size: 38.1 kB

Release files / feed2maildir-0.4.0.macosx-10.12-x86_64.tar.gz

Download URL feed2maildir-0.4.0.macosx-10.12-x86_64.tar.gz
Size 10.9 kB
Tags Source
SHA-256 checksum
How to use checksums
5c0cba6158c8447762eb7ca12c110a9b9c25aaa84e5fbc92f26d84e3d2e39d23
BLAKE2b-256 checksum
How to use checksums
0eb10f425880bba83f05ad0e861fc2c23c172737bd5e2c1a7f99fb27c35afad7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post0 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

Release files / feed2maildir-0.4.0-py3.8.egg

Download URL feed2maildir-0.4.0-py3.8.egg
Size 13.7 kB
Tags Egg
SHA-256 checksum
How to use checksums
3165f6711182450b75f431cc8c2de6045d30f16a7ecbfb464d4fdcb8a7ea7381
BLAKE2b-256 checksum
How to use checksums
ff023b00e3480b0ad37a478bb8606de75493b1222f853d58124c602102ccff64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post0 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

Release files / feed2maildir-0.4.0-py2.7.egg

Download URL feed2maildir-0.4.0-py2.7.egg
Size 13.6 kB
Tags Egg
SHA-256 checksum
How to use checksums
96b43ecf22cec89bfbdf0af57a4347acf0f51df888ab45e778138af13a7d61ee
BLAKE2b-256 checksum
How to use checksums
13799b7dca709e77630022b1be66224394b49f2a761d9907d41e59770c7dc06e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post0 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

Release history Release notifications | RSS feed

This release

0.4.0 This release

3 release files

0.3.8

2 release files

0.3.7

1 release file

0.3.6

2 release files

0.3.5.2

1 release file

0.3.5.1

1 release file

0.3.5

1 release file

0.3.4

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3.2

1 release file

0.2.3.1

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

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1

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