酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

Mastodon .py を使ってステータスを Mastodon へ投稿する

Python を使って、Mastodonに「Hello, Mastodon!」と投稿する方法を紹介する。

Mastodon.py のインストール

Python で Mastodon にメッセージを投稿するには Mastodon.py というパッケージを使用する。Python から Mastodon API に簡単にアクセスするためのツールである。

github.com

このパッケージは pip を使ってインストールできる。

pip install Mastodon.py

Mastodon.py を使ってステータスを Mastodon へ投稿する

以前、さくさんは Pawoo を使用していたが、運営会社の移管や2023年2月のTwitterでの大規模なアカウント凍結事案により、サーバーが過負荷になり、タイムラインがまともに読めなくなってしまった。そのため現在では Fedibird を主要なサーバーとして使用している。

この例では api_base_urlhttps://fedibird.com を指定しているが、皆さんが利用しているサーバーのAPIベースURLに変更して欲しい。

import os
import sys
from mastodon import Mastodon

access_token = 'アクセストークン'
client_id = 'クライアントID'
client_secret = 'クライアントシークレット'
api_base_url = 'https://fedibird.com'

mastodon = Mastodon(
    access_token=access_token, 
    client_id=client_id, 
    client_secret=client_secret, 
    api_base_url=api_base_url
)

status = 'Hello, Mastodon!'
mastodon.status_post(status=status, visibility='public')

上記のスクリプトを実行した。成功すると下図のようにトゥートできているはずだ。

関連記事