Skip to main content

Connect an RSS Feed to Mastodon

Project description

feediverse will read RSS/Atom feeds and send the messages as Mastodon posts. It's meant to add a little bit of spice to your timeline from other places. Please use it responsibly.

Install

pip install feediverse

Run

The first time you run feediverse you'll need to tell it your Mastodon instance and get an access token which it will save in a configuration file. If you don't specify a config file it will use ~/.feediverse:

feediverse

Once feediverse is configured you can add it to your crontab:

*/15 * * * * /usr/local/bin/feediverse    

Run feediverse --help to show the command line options.

Post Format

You can customize the post format by opening the configuration file (default is ~/.feediverse) and updating the template property of your feed. The default format is:

{title} {url}

If you want you can use {summary} in your template, and add boilerplate text like so:

Bookmark: {title} {url} {summary}

{hashtags} will look for tags in the feed entry and turn them into a space separated list of hashtags. For some feeds (e.g. youtube-rss) you should use {link} instead of {url}.

{content} is the whole content of the feed entry (with html-tags stripped). Please be aware that this might easily exceed Mastodon's limit of 512 characters.

De-duping

If you are attempting to use the RSS feed of a major news site, you may find that they change / update (or just re-post) the same items multiple times which will lead to duplicate toots. To enable de-duplication, use the {--dedupe} option to check for duplicates based on a tag before tooting, e.g.

feediverse --dedupe url

Multiple Feeds

Since feeds is a list you can add additional feeds to watch if you want.

...
feeds:
  - url: https://example.com/feed/
    template: "dot com: {title} {url}"
  - url: https://example.org/feed/
    template: "dot org: {title} {url}"

Develop

poetry install
poetry run feediverse

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

feediverse-0.4.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

feediverse-0.4.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file feediverse-0.4.1.tar.gz.

File metadata

  • Download URL: feediverse-0.4.1.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.6.0

File hashes

Hashes for feediverse-0.4.1.tar.gz
Algorithm Hash digest
SHA256 bd250537620b137a434a39042c993ace8f385e34f4938ff04d42a71b5019d579
MD5 2025e453c3b43a9ed74f731b0bb67146
BLAKE2b-256 0bc304875769ffcc171077bfee0acaa5047664b56fab0b07f814a27ff7e23189

See more details on using hashes here.

File details

Details for the file feediverse-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: feediverse-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.6.0

File hashes

Hashes for feediverse-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5d964e515d925e4bbc5e1cac925aec79d488317756ea6ac0b091f5411eed5091
MD5 aef4c6e6f16937733435e1c2f9c68268
BLAKE2b-256 c51aa5fb82fb3b0bdc217ee1dd1ef0050af03117284165bec8cfaf1852bf039c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page