【超初心者】PythonでMastodonのAPIを叩く
最近メインのSNSとしてMastodonを使っているので試しに何かbotでも作ってみるかと思い、備忘録代わりに
アクセストークンの取得
APIを叩くためのアクセストークンを取得します。
Mastodonのホームから
ユーザー設定→開発→新規アプリ
でこのページにたどり着くはずです。
このページでアプリの名前を適当に入力して、下のほうにある送信を押すと
先ほど入力した名前が表示されているのでそこを押すと
クライアントキー
クライアントシークレット
アクセストークン
というのが表示されると思います。
この後必要となるのはアクセストークンのみです。
このページはいつでも見れるので覚えておく必要はありません。
Tootしてみる
以下のコードでtootできます。
import requests
headers = {'Authorization': 'Bearer xxxxxxxxxxxxxxxxx'} #xxxxxxxxxxxxxxxxxに自分で取得したアクセストークンを入れる。
host = "https://example.com/api/v1/statuses" #example.comを自分のインスタンスのドメインに変更する。
toot = "" #toot本文
content = toot.encode() #エンコードしないと動かない
data = {'status': cotent}
post = requests.post(host, headers=headers, data=data)
print(post.status_code)
必要なライブラリはrequestsだけなので非常に簡単にtootすることができます。
コードに直接Access tokenを記述するのはセキュリティ上好ましくないのでその辺は適宣かえて使用してください。
tootするにあたってtootする文章をエンコードしないとうまく動かないらしく、そので手こずってしまいました。
これで200が出力されていれば無事tootができます。
tootしたい文をテキトーに作って持ってきてcronで回せばbotの完成です。
Author And Source
この問題について(【超初心者】PythonでMastodonのAPIを叩く), 我々は、より多くの情報をここで見つけました https://qiita.com/Dakumasu/items/010b3feff6802d803b28著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .