【Python×Twitter】ツイートに自動いいね(ファボ)・リツイートする方法|APIとtweepyでのbot開発

こんにちは、DXCEL WAVEの運営者(@dxcelwave)です!

サマリー

Pythonでツイートに自動でファボ(いいね)やリツイートするにはどうやればいいの?」本記事ではこのような疑問・要望にお答えします。

目次

Twitterの自動操作を実現するためのライブラリ・tweepyとは

tweepyはTwitterAPIを用いてTwitterを簡易操作するためのPythonライブラリです。tweepyを使いこなすことで、オーダーメイドのTwitter自動運用アプリが作成できるようになります。

tweepyはTwitter APIの利用を前提としています。APIキーやシークレットキーの取得が未済の方はまずこちらの記事からご覧ください。API利用までの手順を解説しています。

tweepyとTwitter API利用によって実現できること

tweepyとAPIを用いると上図のようなことが全てできるようになります。本記事では機能を厳選し「Pythonで個人のアカウントを操作し、ファボやリツイードできるようにする方法」を詳しく解説していきます。

tweepyで情報を取得する際、IDを用いるのが特徴的です。具体的に下記2つを示しており、初めは混合しやすいため区別できるようにしておきましょう。

ID名概要
ツイートID(tweet_id)対象ツイートを一意に特定するためのID
ユーザーID(user_id)対象ユーザーを一意に特定するためのID

そして今回は特に「ツイートID」を用います。ツイートIDの取得方法については下記の記事で解説しています。是非合わせてご覧下さい。

【実践】Pythonでファボやリツイートを自動で行うbotを作成する

【事前準備】Pythonライブラリのインストール

今回利用するPythonライブラリは「tweepy」と出力結果の整形用として「pprint」を用います。事前にインストールしておきましょう。

tweepy

pip install tweepy

pprint

pip install pprintpp

【事前準備】クライアント関数作成

まずtweepyライブラリとAPIを呼び出すためのプログラムを下記のように記述しましょう。今回API情報が踏襲された関数として、ClientInfo()関数を用意しています。

import tweepy
from pprint import pprint

# API情報を記入
BEARER_TOKEN        = "BEARER TOKEN"
API_KEY             = "API キー"
API_SECRET          = "API シークレット"
ACCESS_TOKEN        = "アクセストークン"
ACCESS_TOKEN_SECRET = "アクセストークンシークレット"


# クライアント関数を作成
def ClientInfo():
    client = tweepy.Client(bearer_token    = BEARER_TOKEN,
                           consumer_key    = API_KEY,
                           consumer_secret = API_SECRET,
                           access_token    = ACCESS_TOKEN,
                           access_token_secret = ACCESS_TOKEN_SECRET,
                          )
    
    return client

【特定のツイート】ファボ(いいね)する

Pythonから対象ツイートに対してファボできるtweepyのメソッドとしてlike()を利用します。対象ツイートを一意に特定するツイートID(tweet_id)を指定し、下記のように記載しましょう。

# ツイートIDを指定
tweet_id = 'ツイートID入力'

# 関数情報
def LikeTweet(tweet_id):
    favo = ClientInfo().like(tweet_id)
    return favo

pprint(LikeTweet(tweet_id))

【特定のツイート】ファボ(いいね)を取り消す

Pythonから対象ツイートに対してファボを取り消すtweepyのメソッドとしてunlike()を利用します。ツイートID(tweet_id)を指定し、下記のように記載しましょう。

# ツイートIDを指定
tweet_id = 'ツイートID入力'

# 関数情報
def UnLikeTweet(tweet_id):
    favonot = ClientInfo().unlike(tweet_id)
    return favonot

pprint(UnLikeTweet(tweet_id))

【特定のツイート】リツイートする

Pythonから対象ツイートに対してリツイートできるtweepyのメソッドとしてretweet()を利用します。対象ツイートを一意に特定するツイートID(tweet_id)を指定し、下記のように記載しましょう。

# ツイートIDを指定
tweet_id = 'ツイートID入力'

# 関数情報
def ReTweet(tweet_id):
    re = ClientInfo().retweet(tweet_id)
    return re

pprint(ReTweet(tweet_id))

【特定のツイート】リツイートを取り消す

Pythonから対象ツイートに対してリツイートを取り消しするtweepyのメソッドとしてunretweet()を利用します。ツイートID(tweet_id)を指定し、下記のように記載しましょう。

# ツイートIDを指定
tweet_id = 'ツイートID入力'

# 関数情報
def UnReTweet(tweet_id):
    not_re = ClientInfo().unretweet(tweet_id)
    return not_re

pprint(UnReTweet(tweet_id))

最後に

この記事が気に入ったら
フォローしてね!

本記事をシェア!
目次