twitterのAPIを使う(APIアカウント登録とツイートの取得)
プロローグ
TwitterのAPIを使ってツイートしたり、ツイートを取得したりします。
アカウント登録する
※APIの登録画面は定期的にバージョンアップされているようです。
これは2020/8/15時点の方法になります。
通常のtwitterアカウントを事前に作っておき、ログインした状態でtwitterの開発用のサイトへアクセスします。
右上の「Apply」を押下します。
「Apply for a developer account」を押下します。
今回はbotを作るつもりなので、Hobbyistの「Making a bot」を選択して、「Next」を押下します。
アカウントの内容を確認し、国と名前を入力し「Next」を押下します。
用途などの入力が必要になります。
それぞれ英語で入力して「Next」を押下します。
英語は適当な翻訳サイトで翻訳して貼り付ければOKでした。
内容を確認して問題がなければ「Looks good!」を押下します。
承認するので、「Submit Application」を押下します。
twitterに登録してあるメールアドレスに登録を完了させるメールが送信されます。
アプリケーションの名前を入力し、「complete」を押下します。
APIキーなどが発行されます。
これは後からでも確認できるので、そのまま「App settings」を押下します。
Accessトークンを発行します。「Authentication Tokens」にある「Regenerate」を押下します。
アクセストークンが発行されるので、保存しておきます。
※このアクセストークンは後から確認できないので、保存し忘れたら再度「Regenerate」が必要です。
保存ができたら「Yes. I saved them」を押下します。
使ってみる
pythonを使ってサクッと取得したAPIキーが利用可能か確認してみます。
CONSUMER_KEY = "hogehoge"
CONSUMER_SECRET = "hogehoge"
ACCESS_TOKEN = "hogehoge"
ACCESS_TOKEN_SECRET = "hogehoge"
# -*- coding:utf-8 -*-
import json
import config
from requests_oauthlib import OAuth1Session
CK = config.CONSUMER_KEY
CS = config.CONSUMER_SECRET
AT = config.ACCESS_TOKEN
ATS = config.ACCESS_TOKEN_SECRET
twitter = OAuth1Session(CK, CS, AT, ATS) #Twitter認証
url = "https://api.twitter.com/1.1/statuses/user_timeline.json" #エンドポイント
params ={'count' : 1}
res = twitter.get(url, params = params)
if res.status_code == 200:
tweets = json.loads(res.text)
for tweet in tweets:
print('name : ' + tweet['user']['name'])
print('text : ' + tweet['text'])
print('created_at: ' + tweet['created_at'])
print('*******************************************')
else:
print("Failed: %d" % res.status_code)
C:\hoge>python test.py
name : hogehogeo
text : HelloWorld!!
created_at: Sat Aug 15 05:42:25 +0000 2020
*******************************************
エピローグ
登録してpythonコードで確認することができました。
Author And Source
この問題について(twitterのAPIを使う(APIアカウント登録とツイートの取得)), 我々は、より多くの情報をここで見つけました https://qiita.com/roku28632/items/18bd3634eac786b24bde著者帰属:元の著者の情報は、元の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 .