スキルアップしたい

Twitter APIを使って「自動いいね」してみた

2020年2月11日

【PR】この記事には広告が含まれています。

  1. HOME >
  2. スキルアップしたい >

Twitter APIを使って「自動いいね」してみた

2020年2月11日

 

ココに注意

最新のtwitterの規約では、「自動いいね」は禁止されています。当記事の内容を実践する場合は自己責任でお願い致します。

 

 

Twitter APIを使って「自動いいね」してみた

 

Twitter APIを利用して、検索したキーワードにマッチするツイートに対し自動で「いいね」をするpythonコードを作成してみました。

プログラミング経験ゼロの方でも簡単。

以下にその方法をまとめます。

 

記事を書いた人

 

Twitter APIを使って「自動いいね」してみた
大手IT企業でデータサイエンスを活用した分析業務に携わっています。

元営業という経歴を活かしながら、金融・製造・流通業のお客様を中心にAI活用コンサルや定着支援・人材育成の支援をしたり、講演や執筆活動など幅広く活動しています。

ヤエリ(@yaesuri_man

普段のお客様との会話の中でよく話題に出るこのテーマ。

技術畑ではないものの、長らく現場の実務に携わってきた視点は喜ばれることが多いです。

 

こんな方におすすめ

  • プログラミング経験ゼロ
  • PC内に開発環境も無し
  • TwitterのAPIを利用してみたい/ツイートに対し自動で「いいね」してみたい

 

事前準備

 

まずは開発環境(「python」というプログラミング言語の実行環境)と、Twitter APIを利用するための環境を整えます。

 

python実行環境の準備

 

pythonの環境は「Anaconda」というフリーのアプリケーションを利用します。

以下の記事に事細かに説明しておりますので、まずはこちらをご覧ください。

 

Twitter APIを使って「自動いいね」してみた
【kaggle入門】Python環境構築 Anacondaのインストール

続きを見る

 

Twitter APIの申請

 

続いて、Twitter APIを利用できるように準備をします。

APIとは「アプリケーションプログラミングインタフェース」の略。

 

アプリケーションプログラミングインタフェース(API、英: Application Programming Interface)[1]とは、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様である。

※Wikipediaより

 

要は、これまで手動で行ってきた各種操作(フォロー、いいね、リツイートなど)を、外部のプログラムを介して実行させるための窓口。

「Twitter Developerツール」という、開発者向けのサービスを利用し、この窓口を開放させる必要があります。

必要なことは

  • Twitter APIの申請
  • Twitter APIの認証コードを取得
  • ライブラリのインストール

の3つ。

これら全て、以下記事に詳細にまとめてあります。

基本的には英語になりますが、一画面ずつ説明しておりますので、特に難しくはありません。

 

Twitter APIを使って「自動いいね」してみた
Twitter APIに登録してみた~申請に通過したやり取りを掲載~

続きを見る

 

Twitter APIにログイン

 

まずはTwitter APIを利用できるようにします。

Twitter Developersのサイトの以下画面を見ながら、コードを入力していきましょう。

 

Twitter APIを使って「自動いいね」してみた

#tweepyモジュールをインポート

import tweepy


# 各種APIキーをセット
# ※' 'の間は、Twitter Developerのページで自分が取得した各種キーを入力します。

CONSUMER_KEY = '自分のAPI key を入力'
CONSUMER_SECRET = '自分のAPI secret key を入力'
ACCESS_TOKEN = '自分の Access token を入力'
ACCESS_SECRET = '自分の Access token secret を入力'


#必要なインスタンスを生成

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
api = tweepy.API(auth)

 

微妙に、素人泣かせの表記揺れがありますのでご注意を。

Twitter Developersの該当ページからコピペをしたら実行しますが、ここではウンともスンとも言いません。

※エラーが出てなければ問題ありません

 

検索したい語句を入力

 

次に、検索したい語句と、検索件数(「いいね」をしたい件数)を入力します。

ここでは「5件」としました。

 

#検索語句を指定

search_results = api.search(q="検索したい語句",lang='ja',count=5)

 

またここで「'API' object has no attribute 'search'」のエラーが出てしまう場合は、api.searchをapi.search_tweetsに変更すると動くかもしれません。

 

#検索語句を指定

search_results = api.search_tweets(q="検索したい語句",lang='ja',count=5)

 

 

自動で「いいね」

 

以下のコードを実行すれば、検索した結果に対して自動で「いいね」されます。

何らかの理由で「いいね」できなかったツイートは実行結果の下にprintされます。

 

#自動で「いいね」する

for result in search_results:
    tweet_id = result.id
    try:
        api.create_favorite(tweet_id)
    except Exception as e:
        print(e)

 

注意点

 

一度に大量の「いいね」をすると、Twitter社に怒られる

 

繰り返しになりますが、一度に大量の「いいね」をすると、Twitter社に怒られます。

以下の記事によると、「いいね」は24時間内に1,000件までという制限がある模様。

ただ、一日1,000件の「いいね」は異常ですので、数十とかに留めておきましょう。

 

 

通常のツイート検索との違い

 

ブラウザ上でTwitterを開いてツイートを検索する時とは、以下のような違いがあります。

 

通常の検索 search_results指定
検索範囲 ツイート内容、アカウント名、ハッシュタグ ツイート内容のみ
半角全角の区別 区別しない 区別する
大文字小文字の区別 区別しない 区別しない

 

 

Twitter APIを使って「自動いいね」してみたまとめ

 

最後に、今回作成したコードをまとめておきます。

 

#tweepyモジュールをインポート

import tweepy


# 各種APIキーをセット
# ※' 'の間は、Twitter Developerのページで自分が取得した各種キーを入力します。

CONSUMER_KEY = '自分のAPI key を入力'
CONSUMER_SECRET = '自分のAPI secret key を入力'
ACCESS_TOKEN = '自分の Access token を入力'
ACCESS_SECRET = '自分の Access token secret を入力'


#必要なインスタンスを生成

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
api = tweepy.API(auth)


#検索語句を指定

search_results = api.search(q="検索したい語句",lang='ja',count=5)


#自動で「いいね」する

for result in search_results:
    tweet_id = result.id
    try:
        api.create_favorite(tweet_id)
    except Exception as e:
        print(e)

 

その他、pythonやkaggle、AI・機械学習といった記事のまとめはこちらです。

Twitter APIを使って「自動いいね」してみた
プログラミング関連の記事まとめ

続きを見る

ここからは、実際に私が購入し、おすすめできると思った本やオンラインスクールを紹介します。

 

機械学習のための「前処理」入門


 

まずはこちら。「機械学習のための『前処理』入門」です。

  • これから機械学習を始めてみたい
  • kaggleやSIGNATEにチャレンジしてみたい

という方には最適な本で、個人的には一番のおすすめです。

 

データモデルの精度向上には特徴量エンジニアリングが不可欠、というよりこれが全てと言っても過言ではありません。

各種環境準備の方法やコーディングの詳細に至るまで、誰にでも分かりやすく書かれています。

この一冊さえあれば、とりあえずkaggleにトライすることができます。

 

 

Udemy「みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習」


 

ベネッセが主催する、プログラミング未経験者を対象にしたコース。

数学や統計的な知識はそこそこに、文字通り人工知能と機械学習をゼロから学習できます。

受講生2万人以上、4千人以上の評価者から、5段階中4.0の評価を得ている、万人におすすめできる優良講座。

定価15,000円と高価ですが、90%OFFといったキャンペーンを頻繁に行っていますので、それを狙うのがおすすめ。

 

人工知能は人間を超えるか


 

pythonのコーディングからは離れますが、もしこの本を読んでいない人がいたら必ず一度は目を通しておいた方が良いです。

 

この界隈では有名な、東大の松尾豊先生の著書「人工知能は人間を超えるか」。

 

いわゆるAI・人工知能、機械学習といった昨今のキーワードを中心に、過去の歴史からここ最近の動き、今後の動向に至るまでを、平易な表現で丁寧に解説されています。

 

また日本ディープラーニング協会が開催する「ディープラーニング ジェネラリスト検定(通称:G検定)」の推薦図書の一つでもあります。

 

全てのビジネスマンにおすすめできる一冊。中古でもkindleでも構いませんので、これだけは目を通しておいた方が良いです。

 

-スキルアップしたい