Automate crossposting web3isgoinggreat.com posts to social media
Automate crossposting web3isgoinggreat.com posts to social media. The tool captures a screenshot of the specified post, splits it into up to three segments if the post is long, and then posts to Twitter, Mastodon, Bluesky, Instagram, and/or Threads.
Install: Clone the repository, then run pip install -r requirements.txt
.
Example call: crossposter.py 2023-05-01-0
Call the script with the numerical ID (YYYY-MM-DD-INCREMENT
) of the entry to post. The script also takes several
optional flags:
--no-confirm
: Skip the confirmation step, which previews the post text and prompts you to check the screenshot(s)
that will be posted--use-prev
: Use screenshots and post information stored from a past run--debug
: Show more verbose debug messagesMutually exclusive optional flags:
--tweet
: Only post to Twitter--toot
: Only post to Mastodon--skeet
: Only post to Bluesky--insta
: Only post to Instagram--threads
: Only post to ThreadsThe script requires a secrets.py
file with the format:
TWITTER_API_KEY = ""
TWITTER_API_KEY_SECRET = ""
TWITTER_ACCESS_TOKEN = ""
TWITTER_ACCESS_TOKEN_SECRET = ""
MASTODON_EMAIL = ""
MASTODON_PASSWORD = ""
BLUESKY_USERNAME = ""
BLUESKY_PASSWORD = ""
INSTAGRAM_USERNAME = ""
INSTAGRAM_PASSWORD = ""
It also requires a mastodon.secret
file generated via this
process, and a gcp-secret.secret
GCP Service Account key file for
a Service Account with Cloud Functions Invoker access to the addSocialPostIds
cloud function.
Posting on Threads uses the same credentials as Instagram.
Just having fun with python and Bluesky's AT Protocol. Trying to build a simple CLI and enough of SDK to easily explore and collect my own Bluesky data
A small python library to post basic text and media to bsky.app via atproto's xrpc API.
A script for auto-deleting Bluesky posts
A site that measures the current percentage of Bluesky posts missing alt text
🌉 A bridge between decentralized social networks
💬 The social web translator
Your Brand Here!
50K+ engaged viewers every month
Limited spots available!
📧 Contact us via email🦋 Contact us on Bluesky