休日にTwitter APIを使ってみたので、備忘としてブログに残しておこうと思います。
APIを利用できる状態(初期設定)がすごく大変でした。APIを利用するためには、アプリケーションの情報(Key,ID)を事前に取得して必要があります。実際やってみたときは、「どこからAPIのID取得するの?ってなって10分くらいさまよいました。。。」ということで早速やってみたいと思います。
前提条件
- ツイッターアカウントを取得済みで、電話番号が連携されていること。(APIキー取得時に電話番号が連携されてないとキーが取得できないようになっています。)
- Node.jsの実行環境が構築済みであること
事前作業
APIを実行するには、こちらの4つの情報が必要になります。
- consumer_key ・・・アプリケーションのキー
- consumer_secret ・・・アプリケーションのシークレット
- access_token_key ・・・ツイッターアカウントのキー
- access_token_secret ・・・ツイッターアカウントのシークレット
アプリケーションを登録してAPIの取得
まずは、consumer_keyとconsumer_secretを取得します。
1.下記URLよりアプリケーションを登録をおこないます。
https://apps.twitter.com/app/new
以下のように必要な情報入力していきます。
※ Nameは一意の名称である必要があるので、他の人が既に使用している名前での登録はできません。
※ Descriptionは10文字以上で無いとエラーになるので、最低10文字は入れてください。
2.入力が終わったら、画面下の同意欄にチェックを入れ、[Create your Twitter application]をクリックして、アプリケーションを作成します。
3.これで登録完了となるので、[Key and Access Tokens]タブをクリックするとアプリケーションで利用するAPI key & Secretの情報を確認できます。
ツイッターアカウントのトークンを取得
残りのaccess_token_keyとaccess_token_secretの取得をします。
先程の画面下スクロールするとYour Access Tokenという項目があります。ここの[Create my access token]をクリックすると残りの2つを取得できます。
クリック後、トークンが表示されるかと思います。
これで事前作業となるアプリケーションのキーおよびツイッターアカウントのトークンの取得は完了です。続いて実際にツイートを取得してみたいと思います。
やってみた
user_timelineというAPIを使うことでツイートを取得できます。
ツイート取得
let twitter = require('twitter'); var client = new twitter({ consumer_key: 'トークン入力', consumer_secret: 'トークン入力', access_token_key: 'トークン入力', access_token_secret: 'トークン入力', }); getTweet(); function getTweet() { let params = { screen_name: 'Twitter', count: 10, include_rts: false, exclude_replies: true }; client.get('statuses/user_timeline', params, function(error, tweets, response) { if (!error) { for (let i = 0; i < tweets.length; i++) { console.log(tweets[i].text); } } else { console.log(error); } }); }
実行結果
See how Martin Luther King Jr. influenced the world with #ThankYouMLK50 https://t.co/NUiGnd2V83
ツイッター社のツイートが表示されることが確認出来るかと思います。
参考URL
以上