Twitter Api V2でツイートするコードを記載します。
よけいなことはしないで、シンプルなコードを目指します。
1.サンプルコード
import json
from requests_oauthlib import OAuth1Session
API_KEY = '<ここにAPI_KEY>'
API_KEY_SECRET = '<ここにAPI_KEY_SECRET>'
ACCESS_TOKEN = '<ここにACCESS_TOKEN>'
ACCESS_TOKEN_SECRET = '<ここにACCESS_TOKEN_SECRET>'
twitter = OAuth1Session(API_KEY, API_KEY_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
url = "https://api.twitter.com/2/tweets"
payload = {"text": "<ここに文字を入力>"}
req = twitter.post(
url=url,
json=text,
)
if req.status_code == 200 or req.status_code == 201:
print("Succeed!")
else: #エラー
print("ERROR : %d"% req.status_code)
2.エラーや困ったこと
- Twitter Apiで調べると、V1.1の情報がたくさんでてくる。v1.1の情報だと気づかず、悪戦苦闘した後に、v2で使えないと分かったときの悲しみたるや。
- 使えるendpoint(url)が、まだ少ないことに気づかず、画像アップロードできんのかいなと調べてた。。。
- User authentication settingsで、アクセス権等の設定が必要で、更に設定後に、keyとtoekn(全部で5つかな)を更新しないといけないなんて知らなかったよ。。。
- 初めて、投稿できた!!!!!!!!!!自分、天才じゃん?て思ったら、アカウントが凍結された。apiを使ってると凍結されることがあるようだ。僕は、大変悲しかった。
- よくわからんけど、ステータスコードが201だった。
- Twitter Api v2の説明にpostmanでテストしてみなよって書かれてたので、やってみたが、自分のワークスペース作らんとsendできない。