pytrends+Google Colaboratoryを活用し、WEBトレンド(Google Trend)の上位データを取得する方法です。ランキングサイトやトレンドウォッチする際に活用できます。
早速結論
Google Colab上で下記の手順でデータを取得できます。今回はリスト型で保存します。
!pip install pytrends
from pytrends.request import TrendReq
# pytrendsオブジェクトを生成
pytrends = TrendReq()
# 日本のトレンドデータを取得
trending_data = pytrends.trending_searches(pn='japan')
# 上位10件の急上昇ワードをリストで取得
top_trends = trending_data.head(10).values.flatten().tolist()
# 結果を表示
print(top_trends)
結果
['日本 U-23 対 ウズベキスタン U-23', '鬼滅の刃', 'サッカー日本代表 U23', 'ケンタッキーダービー', '今井美樹', '新日本プロレス', '長嶋茂雄', 'Jリーグ', '博多どんたく', '浦和レッズ']
補足
特定のキーワードから関連検索キーワードを取得する方法
from pytrends.request import TrendReq
pytrend = TrendReq(hl='ja-jp',tz=-540, retries=5)
kw_list = ["大谷"]
pytrends.build_payload(kw_list, cat=0, timeframe='today 5-y', geo='JP')
pytrends.related_queries()
結果
{'大谷': {'top': query value
0 大谷 翔平 100
1 大谷 速報 19
2 大谷 翔平 速報 12
3 エンゼルス 9
4 エンゼルス 大谷 9
'rising': query value
0 田中 真美子 大谷 翔平 78150
1 田中 真美子 44650
2 大渓 翔平 21450
3 大谷 翔平 結婚 相手 17400
4 エンゼルス 大谷 翔平 投手 11800}}
期間を指定してデータを取得する方法
trending_searches()は直近24時間のトレンドを取得します。これだとリアルタイムのバズが分かりません。その場合は、
from pytrends.request import TrendReq
# pytrendsオブジェクトを生成
pytrends = TrendReq()
# 日本のトレンドデータを取得
# trending_data = pytrends.trending_searches(pn='japan')
trending_data = pytrends.realtime_trending_searches(pn='JP')
# 上位10件の急上昇ワードをリストで取得
top_trends = trending_data.head(10).values.flatten().tolist()
# 結果を表示
print(top_trends)
結果
※英語でしか出力されない点に注意
['LaLiga, Takefusa Kubo, Real Sociedad, UD Las Palmas, Real Madrid CF, FC Barcelona']
終わりに
2024年4月からアウトプットのためにQiitaとnoteを始めました。「フォロー」や「いいね」頂けると励みになります!