ツイッター検索した結果をPythonで保存してみた【Twitter API #4】(2020年5月)

Python

ツイッター検索した結果をPythonで取得して、いいねの多い順に並べかえて、csvファイルに保存してみました。

【YouTube動画】

ツイッターの検索結果をPythonで取得・保存してみた【Twitter API #4】(2020年5月)

事前準備

Twitter APIに登録しましょう。

登録方法は別のYouTube 動画やブログで紹介しています。

【YouTube】

ツイッターAPIの登録方法【Twitter API #1】 (2020年4月)

【ブログ】

ツイッターAPIの登録方法!自動化への第一歩【2020年4月更新】
ツイッター分析や自動ツイートをするためにAPIを使いたい! APIって何?どう登録するの? そんな方のために、Twitter APIの登録方法を画像付きで解説します。 ツイッターAPIとは 簡...

ソースコード

以下がソースコードです。Google Colaboratory でセルを小分けにしながら実行してください。

from requests_oauthlib import OAuth1Session
import json
import pandas as pd

# 取得ツイート数
count = 100

# 検索ワード
search_word = 'ネコ -filter:retweets'

#認証
CK = 'ここに入力'    # Consumer Key
CS = 'ここに入力'   # Consumer Secret
AT = 'ここに入力'    # Access Token
AS = 'ここに入力'    # Accesss Token Secert

twitter_api = OAuth1Session(CK, CS, AT, AS)

# ツイートの検索・取得
url = 'https://api.twitter.com/1.1/search/tweets.json'
params = {'q':search_word, 'lang':'ja', 'count':count}
results = twitter_api.get(url, params=params)
results = json.loads(results.text)

# Pandasのデータフレームに入れる
data_raw = pd.DataFrame(results['statuses'])
data_raw

# ほしい列だけ抽出
data_new = data_raw[['created_at', 'user', 'text', 'favorite_count', 'retweet_count']]
data_new

# ユーザー名を表示
for result in results['statuses']:
 print(result['user']['name'])

# ユーザーidとユーザー名を別々に取得
user_id =[]
user_name = []

for result in results['statuses']:
  user_id.append(result['user']['id'])
  user_name.append(result['user']['name'])

# data_newにユーザーidとユーザー名を追加
data_new.insert(2, 'user_id', user_id)
data_new.insert(3, 'user_name', user_name)
data_new

# いいねの多い順に並べ替え
data_sorted = data_new.sort_values('favorite_count', ascending=False)
data_sorted

# データをcsvで保存
data_sorted.to_csv('/content/tweet_search_sample.csv')
以上です!
自分のツイートを取得・並び替えする方法は以下の記事で紹介しています。
こちらも参考にしてみてください。
Pythonで自分のツイートを人気順に並べてみた【Twitter API #3】(2020年5月)
自分のツイートをPythonで取得して、いいねの多い順、リツイートの多い順に並べ替えてみました。 【YouTube動画】 Pythonで自分のツイートを人気順に並べてみた【Twitter API #3】(2020年5月) 事前...
タイトルとURLをコピーしました