見出し画像

『超簡単!』 Rubyを使って、特定の語が入ったつぶやきを自動でいいねする方法

こんにちは、月みかん(@PleiadesTaurus)です🌝🍊

今日はrubyを使い、Twitter APIを叩いて特定の語が入ったtweetを自動いいねするプログラムを書こうと思います。

初心者向けなので丁寧に解説していきます!

開発環境
・ruby 2.3.3p222 
・twitter-6.2.0


まずTwitter APIというものを利用するための登録をします。APIとは特定の機能を本人以外も簡単に実装できるよう公開されたものです。APIを使うと本来なら長く複雑なコードで実装しなければならない機能を短く簡単なコードで実装することができます。

API取得はたったの3ステップです。

①TwitterAppに登録

上記のURLに入り、Create New Appを押します。

②Application Detailsの必須項目を埋める

Name:アプリの名前
Description:アプリの説明(英語で10文字以上)
Website:どんなURLでも良い

③4つのキーを取得

Consumer Key(API Key)
Consumer Secret(API Secret Key)
Access Token
Access Token Secret

メニューバーのKeys and Access Tokensというところを押すとあります。

これでAPIの取得は完了です。


次に・・・

①twitterのgemをインストール

[ターミナル]
Usersudo gem install twitter

②App名のディレクトリを作成し、階層移動

[ターミナル]
$ mkdir AI_fav_bot
$ cd AI_fav_bot

③テキストエディタでさっきのディレクトリを開く

画像1

④その中でRubyフォルダを新規に作成

画像2


これで環境は整ったのでいよいよ中身のコードを書いていきます!


自動いいね機能の実装

①クライアント設定

#のところに先ほど取得した4つのキーを入れてください

[AI_fav.rb]

require "twitter"

client = Twitter::REST::Client.new do |config|
  config.consumer_key        = "#"
  config.consumer_secret     = "#"
  config.access_token        = "#"
  config.access_token_secret = "#"
end

②機械学習を含む最近のツイートを20件検索し、いいね

results = client.search("#機械学習", :count => 20, :result_type => "recent")

results.attrs[:statuses].each do |tweet|
    id = tweet[:id].to_s
    client.favorite(id)
end

検索するワードや数はご自分のニーズに合わせて変えてください。

実行

実際に機械学習を含むツイートを検索しいいねを実行してみます。

[ターミナル]
Twitter_bot User $ ruby AI_fav.rb

これでいいね欄を見てみると指定したワードのツイートがいいねされているはずです!

以上でRubyを使った自動いいね機能のチュートリアルは終了です!

お疲れ様でした!


良かったら、Twitterのフォローよろしくお願いします!


参考記事


お読みいただきありがとうございます。このノートに対するスキやコメント、シェア、サポート等をしていただけると励みになります!サポートいただいたお金は僕のモチベ、記事のコンテンツの質の向上に使わせていただきます。どうぞよろしくお願いします!