rsstube/README.md

2.1 KiB

rsstube

Some website provide RSS/Atom feeds. rsstube tries to find the URLs for those feeds.

This is a work-in-progress. It's missing some features I want like proxy support and a way to deal with Cloudflare sites.

That said, if you download this code and run it, it should work for the features and sites that have been implemented.

Installing

rsstube is written in Python, an interpreted language. There's no need to compile it.

Dependencies

  • Python 3
  • PycURL

Arch Linux:

sudo pacman -S python python-pycurl

Debian:

sudo apt install python3 python3-pycurl

Fedora:

sudo dnf install python3 python3-pycurl

Pip:

(Assuming python and pip are already installed...)

pip install --user pycurl

Optional Dependencies

  • Git (for updating via git)
  • GitPython (for updating via git)
  • PyGObject (for the GUI)

Arch Linux:

sudo pacman -S git python-gitpython python-gobject

Debian:

sudo apt install git python3-git python3-gi

Fedora:

sudo dnf install git python3-GitPython python3-gobject

Pip:

(Assuming git is already installed...)

pip install --user GitPython PyGObject

Sample Installation

git clone https://negativezero.link/code/0x80/rsstube.git

sudo ln -s "$(pwd)/rsstube/rsstube" /usr/local/bin/rsstube

Updating

If you installed rsstube with git, and you have GitPython installed, use rsstube -U or rsstube --update.

If you installed rsstube another way (manual download, package manager), update rsstube that same way.

Usage

rsstube <link>

There are some options, but most of them don't work yet.

Scope

rsstube is not a tool for generating new feeds where they don't already exist. It is a tool for locating official feed URLs provided by the site.

I will not register an API key with any service just to get a feed. rsstube only gets feeds which are publicly available.

Site-specific extractors should only be added to rsstube when the site in question requires special logic. If the logic is generally applicable to many sites, it should go in the generic extractor.

License

GPLv2 or later