今回はTwitter APIを使用してPythonでツイートしてみます。
サクッとTwitterBotを作成したいだけなのでAPI権限はEssentialレベルの取得まででOK
権限レベルによる違いは以下のとおり
▶ Essential
サインアップするだけですぐ使える
無料
tweet caps は50万ツイート / 月
作れる環境は 1つ
▶ Elevated
申請が必要
無料
200万ツイート / 月
環境は 3つ作成可能
v1.1 のAPIにもアクセス可能
▶ Academic Research
学術的な使い方する場合に使う
申請が必要
無料
https://zenn.dev/mamushi/articles/twitter_api_v2_setup
TwitterAPI Essentialのアクセストークン取得
Pythonを使用したツイート送信を行うにはアクセストークンを取得する必要があります。
Essentialレベルの権限は比較的かんたんに取得できるため、まずはEssentialでの登録を行い、アクセストークンの取得を行っていく。
※ Twitterアカウントは既に作成されているものとします。
TwitterAPIのページへアクセスし、Sign Upを選択し、アカウントにログインします

Sign Upが完了すると下記画面のようになりますので、設定を行います。

設定が完了すると規約の同意画面となるため、規約を読んで同意します。

規約に同意後、認証用メールが送信されるため、メール受信後認証を行います。

メール認証後、Get startedで環境の作成を行います。

環境作成に必要な情報の入力を行い、「Next」を選択していきます。
そのまま「Basic Info」→「Intended use」→「Review」→「Terms」の入力まで行いSubmitまでを行います。
(英語でAPIの使用目的などを書かなきゃいけないところに少し苦労しました..。)

すべての入力が完了すると、Appの作成を行うことができます。
適当にわかりやすいApp Name を入力しAPIキーを取得します。

アプリの名前を決めると、APIアクセスに必要なアクセスキーを取得できます。
このアクセスキーはここでしか取得できないのででしっかりメモしておきます。
(ただし、再作成は可能です。忘れてしまった、コピーし忘れた場合は再作成を行ってください。)

ここまで完了したらダッシュボードに戻り作成したアプリの設定マークから設定を行います。

権限の設定を行いたいため、「User authentication settings」からSet Upへ進みます

アプリの権限を「Read and Write」にします。
これで、APIを使用してツイートの取得とツイートの作成(投稿)が可能になります。

そして、その下の設定項目を下記のように設定します。
App InfoのURLは「ご自身でお持ちのサイトURL」か、無ければ「https://twitter.com/」と入力すればOKです

Saveを行うとClientID
とClient Secret
の取得が可能になります。
このアクセスキーもここでしか取得できないのででしっかりメモしておきます。
(ただし、再作成は可能です。忘れてしまった、コピーし忘れた場合は再作成を行ってください。)

これで設定が一通り完了しました。
pythonからTwitterAPI v2を使用してツイートを行うためのアクセスキーを取得します。
もう一度ダッシュボードからアプリの設定へ

API Key and Secretの「Regenerate」
Access Token ans Secretの「Regenerate」
を行い、APIキーを取得します。メモします。

これでpythonからAPIv2でツイートを行う準備ができました。
必要なキーは以下となります この4種類がメモできればOKです。
- API key
- API Key Secret
- Access Token
- Access Token Secret
Twitter APIを使用してPythonからツイート
API権限がEssentialレベルであるのでAPI v2を使用してツイートを行います。
事前にpipでツイートに必要なモジュールをインストールしておきます
pip install tweepy
ツイートを行うコードは下記のようになります。(拾ってきました)
import tweepy
consumer_key = <自身のAPIキー>
consumer_secret = <自身のAPIキー シークレット>
access_token = <自身のアクセストークン>
access_token_secret = <自身のアクセストークン シークレット>
client = tweepy.Client(consumer_key=consumer_key, consumer_secret=consumer_secret, access_token=access_token, access_token_secret=access_token_secret)
client.create_tweet(text="APIテストツイート")
たった数行でpythonからツイートができました。
ツイートに失敗した場合はAPIキーが正しいかもう一度確認ください。
以上がAPI取得からpythonでのツイートの手順となります。
コメント