14
19

More than 5 years have passed since last update.

TweepyでTwitterの検索, いいね, リツイート

Last updated at Posted at 2019-05-04

はじめに

tweepyを用いて, 特定のワードを検索する方法について説明します. そして, その検索結果からいいね, リツイートおよびフォローをする方法についても説明します.

検索

api.search()を使うことで検索ができるようです.
引数qで検索したいワードを, 引数countで検索結果の取得数を指定できます.

import tweepy

# 先ほど取得した各種キーを代入する
CK="Consumer Key"
CS="Consumer Secret"
AT="Access Token"
AS="Access Token Secret"

# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)

api = tweepy.API(auth)

#1ツイートずつループ
for status in api.search(q='肉フェス', count=50):
    #見映えのため区切る
    print('-------------------------------------------')
    #ユーザ名表示
    print('name:' + status.user.name)
    #内容表示
    print(status.text)

いいね

create_favorite()を使うことで, ツイートにいいねすることができます. その際, 引数にいいねしたいツイートのidを渡す必要があるようです.
特定のキーワードを検索して, 最新50件のツイートにいいねしてみましょう.
ちなみに, 重複していいねをするとエラーが起こるそうなので, 例外処理にしておくとプログラム途中で止まることが無くなります.

import tweepy

# 先ほど取得した各種キーを代入する
CK="Consumer Key"
CS="Consumer Secret"
AT="Access Token"
AS="Access Token Secret"

# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)

api = tweepy.API(auth)

# 1ツイートずつループ
for status in api.search(q='肉フェス', count=50):
    tweet_id = status.id
    # 例外処理をする
    try:
        # いいね実行
        api.create_favorite(tweet_id)
    except:
        print('error')

リツイート

retweet()を使うことでリツイートができます. いいねと同様に, 引数にリツイートしたいツイートのidを渡す必要があります.

import tweepy

# 先ほど取得した各種キーを代入する
CK="Consumer Key"
CS="Consumer Secret"
AT="Access Token"
AS="Access Token Secret"

# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)

api = tweepy.API(auth)

# 1ツイートずつループ
for status in api.search(q='餃子フェス', count=50):
    tweet_id = status.id
    # 例外処理をする
    try:
        # リツイート実行
        api.retweet(tweet_id)
    except:
        print('error')

フォローする

create_friendship()を使うことでフォローすることができます. 引数にフォローしたいユーザーのidを渡す必要があります. 先程までのツイートのidとは異なるので注意してください.

import tweepy

# 先ほど取得した各種キーを代入する
CK="Consumer Key"
CS="Consumer Secret"
AT="Access Token"
AS="Access Token Secret"

# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)

api = tweepy.API(auth)

# 1ツイートずつループ
for status in api.search(q='野球', count=50):
    # ツイートid
    tweet_id = status.id
    # ユーザid
    user_id = status.user.id
    # 例外処理をする
    try:
        # フォロー実行
        api.create_friendship(user_id)
    except:
        print('error')

関連記事

TweepyでTwitterに投稿する
TweepyでTwitterのタイムラインを取得する

参考サイト

PythonとTwitterAPIを用いて自動いいねやリツイート、フォローを行う

14
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
19