前回に引き続きTwitterAPI v2関連の記事です。
今回はTwitterAPI v2でツイートを投稿する方法を解説しました。
TwitterAPI v2でツイートを投稿する
事前準備
TwitterAPIを使ってツイートをするには、TwitterAPIによる書き込みを許可する必要があります。
まだ書き込み許可をしていない場合は下の記事を参考にして設定を変更してください。
TwitterAPI v2でツイートを投稿する
ここからは実際にTwitterAPIを使ってツイートを投稿する方法を解説します。
ツイートを投稿するプログラムはネットで調べるといくらでも出てきますが、今回はPythonを使って実現します。
以下サンプルコードです。
from requests_oauthlib import OAuth1Session as session
URL = "https://api.twitter.com/2/tweets"
#各種キーとトークは各自で置き換える
CK = "XXXXXXX"
CS = "XXXXXXX"
AT = "XXXXXXX"
ATS = "XXXXXXX"
req = session(CK, CS, AT, ATS)
body = {"text":"これはTwitterAPI v2を使って投稿しました。"}
req.post(URL,json=body)
上記コードでは12行目にある「これはTwitterAPI v2を使って投稿しました。」という文字列をツイートしています。実際のツイート画面は下のようになっています。
投稿内容を変えたい場合は7行目の内容を変更すればいいだけなので、Bot的な決まった文章を投稿したい場合は簡単にプログラムを作れそうですね!
サンプルコードについての補足
サンプルコードの内容が気になる方のために軽く説明的な補足をしておきます。
1行目
from requests_oauthlib import OAuth1Session as session
1行目ではツイートをするために必要なrequests_oauthlibライブラリをインポートしています。
このrequests_oauthlibライブラリではOauth認証を簡単に実装できるライブラリです。Oauth認証については機会があればまた解説記事を書こうと思います。とりあえず面倒な処理をやってくれるライブラリなんだなー、くらいの認識で大丈夫です。
もしrequests_oauthlibライブラリをインストールしていない場合は下記コードでインストールしましょう。
pip install -U requests-oauthlib
3行目
URL = "https://api.twitter.com/2/tweets"
3行目ではツイートするためにエンドポイントを指定しています。エンドポイントとは各処理(ツイートやツイート削除など)を行う際にアクセスするURLのことです。
ツイートする場合は3行目のURLですが、それ以外の処理については適宜Twitterの公式ドキュメントを参照しましょう
5-8行目
#各種キーとトークは各自で置き換える
CK = "XXXXXXX"
CS = "XXXXXXX"
AT = "XXXXXXX"
ATS = "XXXXXXX"
5-8行目では各種キーとトークンを設定しています。それぞれの略は以下のようになっています。
CK:Consumer Key
CS:Consumer Secret
AT:Access Token
ATS:Access Token Secret
これらの内容はTwitterAPIのDeveloperPortalで確認できます。
11行目
req = session(CK, CS, AT, ATS)
11行目では1行目でインポートしたライブラリを使って通信をするためのセッションを作成しています。
その際に5-8行目で設定した各種キーとトークンを使ってユーザを識別・認証できるようにしています。
13行目
body = {"text":"これはTwitterAPI v2を使って投稿しました。"}
13行目では先述の通りツイート文を設定しています。
15行目
req.post(URL,json=body)
15行目では13行目で設定したツイート文を格納したbody変数をエンドポイントにpostすることでツイートを投稿しています。
まとめ
今回はTwitterAPI v2でツイートを投稿する方法を解説しました。
この記事で不明な点や気になるところがあれば下のコメント欄までお願いします。それではまた!
コメント