Skip to main content

A command-line syndication feed monitor mimicking tail -f

Project description

Rsstail is a command-line syndication feed monitor with behaviour similar to tail -f. Rsstail (Python/feedparser) is inspired by rsstail (C/libmrss), but provides more customizable output formatting and additional features.

Usage

$ rsstail --help
Usage: rsstail [options] <url> [<url> ...]

General Options:
  -v --verbose            increase verbosity
  -V --version            show version and exit
  -h --help               show this help message and exit
  -x --help-format        show formatting help and exit

Feed Options:
  -i --interval <arg>     poll every <arg> seconds
  -e --iterations <arg>   poll <arg> times and quit
  -n --initial <arg>      initially show <arg> items
  -w --newer <arg>        show items newer than <arg>
  -b --bytes <arg>        show only <arg> description/comment bytes
  -r --reverse            show in reverse order
  -s --striphtml          strip html tags
  -o --nofail             do not exit on error
  -q --unique             skip duplicate items

Format Options:
  -t --timestamp          show local timestamp
  -T --utc-timestamp      show utc timestamp
  -l --title              show title
  -u --url                show url
  -d --desc               show description
  -p --pubdate            show publication date
  -U --updated            show last update date
  -a --author             show author
  -c --comments           show comments
  -g --no-heading         do not show headings
  -m --time-format <arg>  date/time format
  -f --format <arg>       output format (overrides other format options)

Examples:
  rsstail --timestamp --pubdate --title --author <url1> <url2> <url3>
  rsstail --reverse --title <url> <username:password@url>
  rsstail --interval 60|60s|5m|1h --newer "2011/12/20 23:50:12" <url>
  rsstail --format '%(timestamp)-30s %(title)s %(author)s\n' <url>
  rsstail --format '{timestamp:<30} {title} {author}\n' <url>
$ rsstail --help-format
Format specifiers must have one the following forms:
  %(placeholder)[flags]s
  {placeholder:flags}

Examples:
  --format '%(timestamp)s %(pubdate)-30s %(author)s\n'
  --format '%(title)s was written by %(author)s on %(pubdate)s\n'
  --format '{timestamp:<20} {pubdate:^30} {author:>30}\n'

Time format takes standard 'sprftime' specifiers:
  --time-format '%Y/%m/%d %H:%M:%S'
  --time-format 'Day of the year: %j Month: %b'

Useful flags in this context are:
  %(placeholder)-10s - left align and pad
  %(placeholder)10s  - right align and pad
  {placeholder:<10}  - left align and pad
  {placeholder:>10}  - right align and pad
  {placeholder:^10}  - center align and pad

Available placeholders:
  author
  comments
  created
  desc
  expired
  id
  link
  pubdate
  timestamp
  title
  updated
  utc-timestamp

Please note that {placeholder:flags} style placeholders are available only with Python >= 2.7.

Installing

The latest stable version of rsstail can be installed from pypi:

$ pip install rsstail

Or simply put the standalone rsstail script in your $PATH and make it executable:

https://github.com/gvalkov/rsstail.py/releases/download/v0.5.0/rsstail.pyz.zip

Colorizing output

Rsstail’s’ output can be piped to one of the many console colorizers. Consider using one of the following tools: clide, multitail, ccze, colorize, colorex or colout.

Example with clide:

$ rsstail <options> \
| clide -e '/(Title|Pubdate|Author|Link|Description):/g,fg=yellow,bold' \
        -e '/^.*FAILURE.*$/,fg=red,bold \

Example with multitail:

# add to /etc/multitail.conf
colorscheme:rsstail.py:console syndication feed monitor
cs_re:red,,bold:^.*FAILURE.*$
cs_re:cyan:(:|/)
cs_re:yellow:^.......... ..:..:..
cs_re:green:(Title|Author|Link|Pubdate):

$ multitail -cS "rsstail.py" -l "rsstail <options>"

These two examples are barely touching the surface of what clide and multitail can do. Refer to the documentation of these excellent projects for more information.

Shell completion

Rsstail comes with shell completion scripts for bash and zsh.

If you are installing system-wide, the setup script will attempt to place these files in the right place.

Similar projects

License

Rsstail is released under the terms of the Revised BSD License.

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

rsstail-0.5.1.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

rsstail-0.5.1-py2.py3-none-any.whl (10.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file rsstail-0.5.1.tar.gz.

File metadata

  • Download URL: rsstail-0.5.1.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for rsstail-0.5.1.tar.gz
Algorithm Hash digest
SHA256 8ca70abe2ebddc3b66081e990637025e96562e092ee31af04a1f18274343e6dc
MD5 777b7956b447b89d35c2f95cce4b74ad
BLAKE2b-256 737b4afb26a9384894d1625008abd24d11060212eac805aa3aee569be785e4e5

See more details on using hashes here.

File details

Details for the file rsstail-0.5.1-py2.py3-none-any.whl.

File metadata

  • Download URL: rsstail-0.5.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for rsstail-0.5.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9ab270abf73ee4e3656ba617c606354bf2653348f392231b7926ac4558b3f6c8
MD5 665d5b9324d800150a58202400fa6a86
BLAKE2b-256 ee2852ea3f4c05a4b1d51e6bd4a89f3dc7463d08a719c86732cc2812e59c3f4b

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