w3igg-crossposter:Web3isgoinggreat.com投稿の自動クロスポスティングツール

Tool

概要

w3igg-crossposterは、Web3の情報発信プラットフォームであるweb3isgoinggreat.comの投稿を自動で複数のソーシャルメディアにクロスポストするためのツールです。指定した投稿のスクリーンショットを取得し、長文の場合は最大3つの画像に分割して、TwitterやMastodon、Bluesky、Instagram、Threadsなど多彩なSNSに投稿可能です。Pythonで実装され、簡単に導入・運用できるため、Web3関連の情報を幅広く拡散したい個人やコミュニティに最適なソリューションを提供します。

GitHub

リポジトリの統計情報

  • スター数: 6
  • フォーク数: 0
  • ウォッチャー数: 6
  • コミット数: 30
  • ファイル数: 18
  • メインの言語: Python

主な特徴

  • web3isgoinggreat.comの投稿を自動でスクリーンショットし、SNSに連携投稿可能
  • 投稿が長文の場合、最大3つの画像に分割して複数投稿が可能
  • Twitter、Mastodon、Bluesky、Instagram、Threadsなど複数SNS対応
  • Python製でシンプルかつ拡張性のある設計

技術的なポイント

w3igg-crossposterはPythonで開発されており、web3isgoinggreat.comの特定投稿を取得してスクリーンショット化するところからスタートします。投稿の内容は画像化されるため、テキスト文字制限のあるSNSでも全文を視認できる形で共有できるのが特徴です。特に長文投稿に対しては、画像を最大3分割まで自動生成し、連続投稿することで情報の欠落を防いでいます。

SNS連携には各プラットフォームのAPIを活用しており、Twitter API、Mastodon API、Bluesky API、Instagram API、Threads APIなど多様なサービスに対応可能となっています。これにより、一度の操作で複数のSNSに投稿でき、手動投稿の手間を大幅に削減します。

開発にあたっては、Pythonの画像処理ライブラリを用いてスクリーンショットの分割やリサイズを実現しており、可読性を保つための画像フォーマット調整も行われています。また、コマンドライン引数で投稿ID(形式はYYYY-MM-DD-INCREMENT)を指定するだけで実行できるため、バッチ処理やスケジューラーと組み合わせやすい設計です。

さらに、ソースコードはモジュール化されており、crossposter.pyを中心に、定数管理ファイル(constants.py)や各SNS連携処理が分かりやすく整理されています。これにより、将来的なAPI仕様変更や新規SNS追加にも柔軟に対応可能です。

セキュリティ面では、APIキーや認証情報は環境変数や設定ファイルで管理することを想定しており、コード内に直接埋め込まない設計となっています。これにより、運用時の安全性も確保されています。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: Git管理除外設定ファイル
  • LICENSE: ライセンス情報
  • README.md: プロジェクト概要と利用方法の説明
  • constants.py: 定数や設定値を格納
  • crossposter.py: メインの実行スクリプト、投稿処理のエントリーポイント
  • sns_clients/: SNSごとのAPI連携モジュール群(例: twitter.py, mastodon.pyなど)
  • utils/: 画像処理やスクリーンショット取得のユーティリティ関数群
  • requirements.txt: 必要なPythonライブラリ一覧
  • config/: 設定ファイルや認証情報置き場(推奨)
  • scripts/: 補助的なスクリプト群

その他、テストコードやドキュメントなど計18ファイルで構成されています。

まとめ

Web3投稿のSNS拡散を自動化する便利なツール。

リポジトリ情報: