A utility to publish RSS/Atom feeds to Diaspora*
Project description
pod_feeder_v2
Publishes RSS/Atom feeds to Diaspora*
This is a lightweight, customizable "bot" script to harvest RSS/Atom feeds and re-publish them to the Diaspora social network. It is posted here without warranty, for public use.
v2 is a complete re-write of the original pod_feeder script which was written (poorly) in perl and is no longer supported. Migrating to this version is recommended.
Installation
pod_feeder_v2 requires python3. You can easily install the dependencies with pip:
System-wide
sudo pip3 install pod-feeder-v2
Individual user
pip3 install --user pod-feeder-v2
When installing as a non-privilegd user, make sure you have ~/.local/bin
in your $PATH
Migrating from pod_feeder "classic"
-
pod_feeder_v2's database schema is backward-compatible with the original, so you can point the script at your existing
feed.db
file (or whatever yours is called). -
The
--title-tags
and--url-tags
arguments have not been carried forward because in practice they generally create lots of spurious tags, and the 'stop words' feature is difficult to implement.--user-agent
is not currently implemented because the feedparser library does not support it. -
Several new options,
--summary
,--debug
, and--quiet
have been added.
Usage
This script is intended to be run as a cron job, which might look something like this:
@hourly pod-feeder --feed-id myfeed --feed-url http://example.com/feeds/rss --pod-url https://diaspora.example.com --username user --password ******** --quiet
There is also a database cleaner script that you can run as often as you like to keep your database size under control:
@weekly pf-clean-db feed.db > /dev/null 2>&1
usage: pod-feeder [-h] [--aspect-id ASPECT_ID] [--auto-tag AUTO_TAG]
[--category-tags] [--database DATABASE] [--embed-image]
--feed-id FEED_ID --feed-url FEED_URL
[--ignore-tag IGNORE_TAG] [--limit LIMIT] [--no-branding]
--pod-url POD_URL [--post-raw-link] [--timeout TIMEOUT]
[--username USERNAME] [--via VIA] [--summary | --full]
(--password PASSWORD | --fetch-only) [--debug | --quiet]
optional arguments:
-h, --help show this help message and exit
--aspect-id ASPECT_ID
Numerical aspect ID to share with. May be specified
multiple times (default: 'public')
--auto-tag AUTO_TAG Hashtags to add to all posts. May be specified
multiple times
--category-tags Automatically hashtagify RSS item 'categories' if any
--database DATABASE The file to store feed data (default: 'feed.db')
--embed-image Embed an image in the post if a link exists
--feed-id FEED_ID An arbitrary label for this feed
--feed-url FEED_URL The feed URL
--ignore-tag IGNORE_TAG
Hashtag to filter out. May be specified multiple times
--limit LIMIT Only post n items per script run, to prevent post-
spamming
--no-branding Do not include 'via pod_feeder_v2' footer to posts
--pod-url POD_URL The pod URL
--post-raw-link Post the raw link instead of hyperlinking the article
title
--timeout TIMEOUT How many hours to keep re-trying failed posts (default
72)
--username USERNAME The D* login username
--via VIA Sets the 'posted via' footer text (default:
'pod_feeder_v2')
--summary Post the summary text of the feed item
--full, --body Post the full text of the feed item
--password PASSWORD The D* user password
--fetch-only Don't publish to Diaspora, queue the new feed items
for later
--debug Show debugging output
--quiet Suppress normal output
A Note on YouTube Feeds
It is possible to publish a YouTube channel's feed, by using the following URL format:
https://www.youtube.com/feeds/videos.xml?channel_id=<channel id>
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pod_feeder_v2-1.0.9.tar.gz
.
File metadata
- Download URL: pod_feeder_v2-1.0.9.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1dbf6cdc0f02b8fc4ca9b6a4831c4410a09a247a240ec461cb104590db12e3af |
|
MD5 | 9a4b741b48b9ac4b2ce4b796f0889f13 |
|
BLAKE2b-256 | d4252cb27e24d2376b718d7fba6c56d3849dbf4a2e069c49dd55fa947bcafd7e |
File details
Details for the file pod_feeder_v2-1.0.9-py3-none-any.whl
.
File metadata
- Download URL: pod_feeder_v2-1.0.9-py3-none-any.whl
- Upload date:
- Size: 13.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf0184cf89ddb42f9a88a298986d94bf795a25e084d5ec385dd4d7444f95df3c |
|
MD5 | 8f58652736cd27d1784f2925f7ba0714 |
|
BLAKE2b-256 | 92b512a0edb005f176de60e7ba5af81cba4c0426a164cbdff0f2bd3729358800 |