【twitterAPI】超簡単！twitterAPI取得方法まとめてみた〜

# 悲しいお知らせ
公式Twitterより

https://twitter.com/TwitterDev/status/1621026986784337922?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1621026986784337922%7Ctwgr%5Ee934965a9b00ee067c95c513f04743521a01bc13%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fwww.itmedia.co.jp%2Fnews%2Farticles%2F2302%2F02%2Fnews171.html

>2月9日より、Twitter APIへの無料アクセス（v2、v1.1とも）のサポートを終了します。代わりに有料のBasic Tierが提供される予定です.

2023/2/9からtwitterAPI有料になりそうです🥺
なのでこの記事(v2の設定方法)はほぼ使い物にならない可能性が高いです😭
有料になったらそっちでも記事書こうと思ってるのでその時はぜひ一緒に試してみましょー！
# TwitterAPIの登録
所要時間約**1時間**です
### アカウント作成
twitterアカウントを作成またはログインする
（今回は初めてtwitterAPIを扱うので新しく作っておくことをお勧めします）
**電話番号** の登録を忘れないように！

### TwitterDeveloperに登録
下のURLにアクセスする
https://developer.twitter.com/en
ログインしてなかったらログインする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/dce2b4af-3f8a-9f92-30f4-9df3589308c4.png)
右上の「Developer Portal」をクリック
![スクリーンショット 2022-11-01 21.21.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/847a78fc-8885-b700-a727-f90b5eeab815.png)
なんか出てきたら適当に埋めといてください！
「What country are you based in?」→「Japan」
「What's your use case?」→「Making a bot」
「Will you make Twitter content or derived information available to a government entity or a government affiliated entity?」→「No」

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/b09b7f38-21ce-5059-b27c-7117cbf2f60e.png)
「Accept Terms & Conditions」にチェックつけて「Submit」をクリック

次に、twitterに登録したメール確認
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/4fe5996e-dee2-e472-fd43-7c92ccd9b168.png)
「Confirm your email」をクリック
登録したメアドでログインする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/66ba6cb6-d0e3-da35-3469-8645c567a762.png)
最初にapp名を登録する必要がありますのでテキトーに書いて「Get keys」をクリックしてください
誰かと被ってたら登録できないので被ってない名前にして登録しましょー

![スクリーンショット 2022-11-01 21.35.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/b1c9d9d9-c018-b8bd-427c-2efcaef25366.png)
するといろんなキーが生成されます！
これは誰にも教えないようにして、どこかに保存しときましょー（後で使います）
**絶対保存しといてください**
保存できたら「Dashboard」をクリック

![スクリーンショット 2022-11-01 22.06.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/4610c9d5-67a9-89cf-22a6-c4a5eb1a6f81.png)
上の画像のところに行き、「Set up」をクリック

項目を埋めていきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/cad86432-9242-3b6f-99c7-626328ec025f.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/ded48a3d-0052-b910-3d43-bf74e619bc50.png)
![スクリーンショット 2022-11-01 22.35.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/5ca848db-5705-3c1f-9c97-65b25a7432a9.png)
1番上は「https://127.0.0.1:3000/cb」
2番目は「https://twitter.com/自分のID」
したから2つはテキトーで大丈夫です

![スクリーンショット 2022-11-01 22.41.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/0eaf36a9-bbfc-fc60-e6a1-6667c08112d6.png)
次に「Dashboard」の鍵マークのところをクリック

![スクリーンショット 2022-11-01 22.44.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/7aa9af52-9f44-960e-a421-261cb8090cc8.png)
上図の「Generate」クリック
**Access Token**と**Access Token Secret**を保存しときましょー！

### 終わり
これでTwitter操作に必要なキーが揃いました
- API Key
- API Key Secret
- Access Token
- Access Token Secret

### ラスト権限です
![スクリーンショット 2022-11-01 23.16.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/3a1cbdce-5f82-7105-cb0f-e7df4eee3c2e.png)
「Twitter API v2」の「Elevated」の「Apply」をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/118947e2-3a3b-e700-f75f-63507eeebb2d.png)
テキトーにプログラミングスキルを自分に合ったものを選択してください
「Next」クリック
次に何目的でtwitterAPIを使うのか英語で書く必要があります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/7235c4bd-38cc-c17e-9af9-60f114cfaf93.png)
日本語で書いて[DeepL](https://www.deepl.com/ja/translator)にぶち込めば耐えます
俺は[こちら](https://lemon818.com/twitter-api/)参照しました

書き終わったらテキトーにnext押しとけばOKです。
![スクリーンショット 2022-11-01 23.39.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/7e026fb2-9733-cbe1-914f-2be7c0e9753d.png)

最後確認
Elevatedのとこに緑のチェック入ってたら権限ゲットできてます！

# TwitterAPIを使ってみよう

TwitterAPIを使ってpythonでツイートしてみましょう！
pythonでTwitterを操作するにはtweepyというライブラリを使います
```terminal:terminal
pip install tweepy
```
colabの場合は
```
!pip install tweepy
```
でいけます！
```python:tweet.py
import tweepy

# 自分のキーに変更
api_key = "**********"
api_key_secret = "**********"
access_token = "**********"
access_token_secret = "**********"

# Twitterの認証
auth = tweepy.OAuthHandler(api_key, api_key_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, wait_on_rate_limit=True)

# Tweetする
api.update_status(status = "Hello")
```
```terminal:terminal
python3 tweet.py
```
これでツイート完了です！

もしツイートできなかった方は権限をご確認ください！
![スクリーンショット 2022-11-26 21.47.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/2fe3ee9b-9e6b-eda9-30f1-785b5c5368c5.png)

「Dashboard」→「Projects&Apps」→「project」のとこにある作ったプロジェクトを選択して「User authentication settings」の「Edit」をクリックしてください！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/257e1856-5d8e-3304-6c27-cc4f73e10853.png)
ここで「Read and write」以上の権限を付与してください！
その後一番下の「Save」をクリックしといてください〜！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2586059/4406a13b-13a1-8cef-2df9-c5581068bffb.png)
次回、いいね、フォローなどもっと詳しくTwitterAPIについてやっていきましょー！

https://qiita.com/Naoya_pro/items/df6246cfe4d95ea69bea

https://qiita.com/Naoya_pro/items/e6d2fd875fa61f962fe3