スナックelve 本店

バツイチ40代女の日記です

キーワードで検索してフォローしよう

4フォロワーでアフィリエイトURL流してもしょうがねぇ!! まずはフォローしよう。フォロバしてくれる人もいるかも知れないし!!!
フォローされるよりもフォローしたいAPIで。悪用厳禁。めちゃ苦労した!!!


キーワードは”マンガ 好き フォロー”で検索してでてきたユーザーをフォローするぞい、と。
とりあえず全部フォローしてるけど自分のフォロワーを除く、とか必要かも
(フォロワーをフォローしても何もならんらしいのでとりあえずそのまま)

from asyncio.windows_events import NULL
import tweepy
from time import sleep
# API情報を記入
BEARER_TOKEN = 
API_KEY = 
API_SECRET = 
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


# メイン処理
client = ClientInfo()
# 検索ワードを含むツイートのユーザーIDを取得したかったがよくわからん
tweetIds = client.search_recent_tweets(
    query='マンガが好き フォロー', max_results=30, expansions='author_id')
datas = tweetIds.data
print("-----")
print(tweetIds)
users = {'items': {}}
for data in datas:
    # IDからユーザー取得
    userInfo = client.get_user(id=data.author_id, user_fields='name')
    print("-----")
    print(userInfo)
    if userInfo.data.id:
        # 配列に追加(これで重複避けられる?)
        if len(users['items']) is NULL:
            users['items'][userInfo.data.id] = userInfo.data.name
        else:
            flg = True
            for k, v in users['items'].items():
                if v == userInfo.data.id:
                    flg = False
            if flg:
                users['items'][userInfo.data.id] = userInfo.data.name

for k, v in users['items'].items():
    # 配列分フォロー

    print(v + "フォロー")
    client.follow_user(k)
    sleep(10)

参考

辞書が・・・多次元辞書の使い方がわからなくて結局1次元の辞書にした(;´Д`)↑のitemsは邪魔なだけw
[解決!Python]条件式(三項演算子)を使ってif文を1行で書くには:解決!Python - @IT
ディクショナリ | キーと値がセットになって保存される Python オブジェクト型
Python の例外を別の例外として投げるときの話 - サーバーワークスエンジニアブログ
Pythonの2次元配列の使い方!初期化、追加、検索方法まとめ | プログラミングを学ぶならトレノキャンプ(TRAINOCAMP)
Python (BERT) でTwitterの感情分析|手順やTwitter API v2の使用例、サンプルコードも! - D-Cubed Lab
【Python×Twitter】検索ツイートのデータ取得・分析|APIとtweepy活用による自動運用アプリ開発支援
pickle --- Python オブジェクトの直列化 — Python 3.10.6 ドキュメント
【Python】辞書(dict)型の使い方を解説!サンプルコード付き!|フライテック
【Python】辞書(dict)型の使い方を解説!サンプルコード付き!|フライテック
python - Pythonで多次元辞書の中から特定の要素があるか検索し、あれば値を取得したい - スタック・オーバーフロー
Pythonで辞書に要素を追加、辞書同士を連結(結合) | note.nkmk.me
Pythonで辞書のキー・値の存在を確認、取得(検索) | note.nkmk.me
Pythonの三項演算子(条件演算子)でif文を一行で書く | note.nkmk.me
Pythonの例外処理(try, except, else, finally) | note.nkmk.me
PythonでTwitter API v2を叩いてツイートを取得する方法【サンプルコードあり】
【Python】辞書型(dictionary)からキーのみを取得するkeys | 鎖プログラム
pythonでtwitterが扱えるtweepyについて【サンプルコードあり】|python-manブログ
PythonでTwitter API v2を使ってみよう。ツイートを探す編 - Qiita
Python Twitterからツイートを取得してテキスト分析(wordcloudで見える化) - Qiita
Pythonの多次元Dictionary(辞書型)のキー、値の検索・存在確認 - Qiita
【Python入門】ブール演算子(and・or・not)の使い方 - Qiita
Python の辞書の配列またはリスト | Delft スタック
Python 辞書を初期化する | Delft スタック
Pythonの辞書(dict)に要素を追加する方法まとめ | HEADBOOST
Python | 辞書を作成する
Python | 辞書の要素の値を変更するまたは新しい要素を追加する
Python | 辞書に含まれるすべてのキーと値を取得する
Python | ファイル名またはディレクトリ名を変更する
Python | if文を使った条件分岐
Python | 比較演算子の使い方
Python | 比較演算子の使い方
Python | リストに指定した値と同じ要素が含まれているか確認する
PythonでJSONデータを扱う工夫 | TECHSCORE BLOG
とほほのPython入門 - 演算子 - とほほのWWW入門
python — tweepy例外インスタンスからエラーコードを取得します