Twitterでいろんな情報を集めたいので、自動フォローとリストインをpython+tweepyコードをパクってみた
こういうことをTwitterでやるとアカウントBANになるのかも知れませんが、TLからいろんな情報を集めたいのでTweetを検索してリストにいれるBOTを作ってみました。
1.自動リストイン構想
興味のある話はTwitterにかなり流れて居るのですが、せっかくの情報がTLに埋もれて見逃してしまうことがあるので、そのカテゴリーのTweetをじっくり見させてもらいたいのが目的です。
フォローせずにリストだけ入れると相手方に気を悪くされそうな気がするのでフォローとリストインにしました。
勝手にフォローしても許してくれそうな人、ハッシュタグで検索しても良いよオーラの出てる人主体にする。
できるだけ怪しいアカウントは検索したときに選別しておきたい。
2.Twitter API v2では難しそう
ツイートを検索して取得とかは比較的簡単にできるようなんだが、自動フォローやリストインが私のような初心者コースではかなり難関な感じがします。
ググっても出てこないんですが、何が難しいってTwitterAPIのV1.1とV2の情報が混在していて私にはわけがわからない。
3.妥協してTwitterAPIV1.1のコードを拾ってきて少し弄ってみた。
TwitterにAPI V1.1を使いたいんじゃ申請をして。パクリ元、いや引用元は以下の通り。
TweepyでTwitterアカウントを自動フォローする方法 | みゃふのPythonプログラミング解説
import tweepy
import time
# API情報(API1.1)を記入
consumer_key=' '
consumer_secret=' '
ACCESS_TOKEN=' '
ACCESS_TOKEN_SECRET=' '
#API V1.1認証
auth = tweepy.OAuthHandler("consumer_key","consumer_secret")
auth.set_access_token("ACCESS_TOKEN","ACCESS_TOKEN_SECRET")
api = tweepy.API(auth)
#検索したいキーワードをいれる。もしくははORにしてやれば良いみたい。
#リツイートは拾いたくないのでフィルターする。
query = "#レザークラフト OR #LeatherCraft -filter:retweets"
#CRONで定期的に動かすのでバン対策にカウント少なめにした。
#検索方法は新しいもの(recent)、人気なもの(popular)と混在型(mixed)があるらしい。
results = api.search_tweets(q=query,result_type='mixed',count=10)
#実行
for result in results:
#検索結果でユーザーを抽出
screen_name = result.user.screen_name
print('@' + screen_name + 'をフォロー処理中...')
for i in range(3): #RateLimitにかかったら3回までリトライ
try:
if result.lang == 'ja': #日本語ユーザーかどうかフィルタリング
api.create_friendship(screen_name=screen_name) #フォローする
api.add_list_member(screen_name=screen_name,list_id="リスト番号") #リストにそのツイートのユーザ名を追加する
print('@' + screen_name + 'さんのフォローに成功しました。')
else:
print('@' + screen_name + 'さんは日本語アカウントではありません。')
except tweepy.TweepError as e: #エラーはこっちで処理(この辺の理解がまだできてない)
if e.reason == "[{'message': 'Rate limit exceeded', 'code': 88}]":
print(e)
time.sleep(15 * 60) #15分待機
else:
break
else:
time.sleep(5) #5秒おく
break
こんな具合でほぼパクってきたものをちょっといじってそのまま動かした。
引用元さんありがとう。
V2でやるにはどうやったら良いのだろう?今の私には少し難問だったようだ。
Amazon Mastercard (アマゾン マスターカード) 最大2%ポイント還元
¥1入会ポイント 2,000ポイント以上付与
(2024年4月19日 22:02 GMT +09:00 時点 - 詳細はこちら商品価格と取扱状況は記載された日時の時点で正確で、また常に変動します。Amazon のサイトに表示された価格と取扱状況の情報は、この商品が購入されたその時のものが適用されます。)
どこでも簡単トイレ トイレの女神PREMIUM 簡易トイレ 【防災士が監修】 15年保存&日本製 携帯/防災/非常用トイレ 防災グッズ 防災ガイドブック付き (100回)
このたびの石川県能登地方を震源とする令和6年能登半島地震により、商品の出荷にお時間を頂戴しております。誠に恐れ入りますが、商品カート付近のお届け日をご確認のうえ購入いただくようお願い申し上げます。 ✅【防災セットの必需品!水の要らない 非常用トイレ 】地震・大雨などの災害時に、水が流せずトイレに困るケースが多いことをご存じでしょうか。簡単に取り付けられる 簡易トイレ 災害用 のため、非常時でも安心。非常食 などの 防災グッズ と一緒に備えておくのがおすすめです! ✅【防災士監修】災害大国だからこ... もっと読む
(2024年4月19日 22:02 GMT +09:00 時点 - 詳細はこちら商品価格と取扱状況は記載された日時の時点で正確で、また常に変動します。Amazon のサイトに表示された価格と取扱状況の情報は、この商品が購入されたその時のものが適用されます。)
アース製薬(Earth Chemical) アースガーデン 除草剤 アースカマイラズ 草消滅 [4.5L] ガーデニング ジョウロヘッド(シャワー タイプ) 家庭用 園芸 雑草 除去 除草剤
性状:淡黄色澄明水溶性液体 農林水産省登録番号:第22803号、毒性区分:普通物 効果持続時間:約5~8カ月・最長で10カ月(環境により異なる) 内容量:4.5L 成分:ブロマシル・グリホサートイソプロピルアミン塩・メコプロップPカリウム塩・水・界面活性剤等
(2024年4月19日 18:02 GMT +09:00 時点 - 詳細はこちら商品価格と取扱状況は記載された日時の時点で正確で、また常に変動します。Amazon のサイトに表示された価格と取扱状況の情報は、この商品が購入されたその時のものが適用されます。)
ディスカッション
コメント一覧
まだ、コメントがありません