Skip to main content

Auto-posts social media updates

Project description

autopost

CI PyPI version

A social media auto-poster for a blog.

Supported sites:

  • Twitter (currently untested)
  • Mastodon (any instance)
  • Reddit (any subreddit)
  • Bluesky

Installation

autopost requires Python 3.11 or newer, and is available on PyPI:

python -m pip install autopost

Usage

usage: autopost [-h] [-V] [-v] [--dry-run] [--config-file CONFIG_FILE] {manual,atom} ...

auto-posts social media updates

positional arguments:
  {manual,atom}
    manual              auto-post manually
    atom                auto-post from an Atom RSS feed

options:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  -v, --verbose         be more verbose while running (default: False)
  --dry-run             perform a dry-run (default: False)
  --config-file CONFIG_FILE
                        the file to load for configuration (default: ./autopost.toml)

Examples

To do anything meaningful with autopost, you'll need to configure it. See autopost.example.toml for an example configuration file.

Once configured, you can use autopost to make a post manually:

$ autopost manual "test" --url "https://example.com" --tags foo bar
🎉 reddit:/r/enosuchblog: https://reddit.com/r/enosuchblog/comments/zldk8y/test/
🎉 mastodon:@yossarian@infosec.exchange: https://infosec.exchange/@yossarian/109509443715725349

...where --tags is optional.

Alternatively, you can use autopost atom to retrieve a post from an Atom-style RSS feed:

autopost atom https://example.com/feed.xml

In both cases, you can pass --dry-run to see what autopost would post instead of actually doing it:

$ autopost --dry-run atom https://blog.yossarian.net/feed.xml
dry run: would have posted Modernizing my 1980s sound system with URL:
https://blog.yossarian.net/2022/11/07/Modernizing-my-1980s-sound-system and tags: ['howto', 'workflow', 'music']

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

autopost-0.0.5.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

autopost-0.0.5-py3-none-any.whl (10.4 kB view hashes)

Uploaded Python 3

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