今回は業務でGoogleトレンドの集計を行っていたのですが、その際に「Pytrends」というライブラリが非常に便利だったので備忘録を兼ねて使い方やサンプルコードを紹介したいと思います。
前準備
まずはライブラリをインストールします。
※ 実行環境はGooglecolabratryを想定しています。
# ライブラリのインストール !pip install pytrends !pip install japanize-matplotlib
Pytrendsでgoogleトレンドを取得するサンプルコード
公式ドキュメントから参照したものになります
公式DOC:https://github.com/GeneralMills/pytrends
キーワード別の検索人気を可視化する
import japanize_matplotlib %matplotlib inline from pytrends.request import TrendReq import requests from lxml import etree import pandas as pd import matplotlib #タイムゾーンとキーワード設定 pytrends = TrendReq(hl='ja-JP', tz=540) kw_list =["呪術","鬼滅", "東リベ"] #データ作成 pytrends.build_payload(kw_list, cat=0, timeframe='2021-01-01 2021-12-31', geo='JP', gprop='') #データ取得 df = pytrends.interest_over_time() #取得データをグラフ化 df.plot(figsize=(15, 3), lw=.7)
<実行結果>
キーワードごとのサジェストを確認する
for kw in kw_list:
google_r = requests.get("http://www.google.com/complete/search",
params={'q':kw,
'hl':'ja',
'ie':'utf_8',
'oe':'utf_8',
'output': 'toolbar'})
google_root = etree.XML(google_r.text)
google_sugs = google_root.xpath("//suggestion")
google_sugstrs = [s.get("data") for s in google_sugs]
google_suglist = []
for ss in google_sugstrs:
google_suglist.append(ss)
print(ss)
<実行結果>
呪術廻戦 呪術廻戦0 呪術廻戦 ファントムパレード 呪術廻戦 漫画 呪術廻戦 ネタバレ 呪術廻戦 直哉 呪術廻戦 190 呪術廻戦 187 呪術廻戦 194 呪術廻戦 20巻 鬼滅の刃 鬼滅之刃 全集中展 鬼滅の刃 遊郭編 鬼滅展 鬼滅の刃 キャラ 鬼滅の刃 ぴょんコレフィギュア 鬼滅の刃ヒノカミ血風譚 鬼滅の刃 映画 鬼滅の刃 一番くじ 鬼滅の刃 漫画 東リベ…
終わり
調べたところこれは非公式のAPIを使用しているようで頻繁に叩くとプロキシで弾かれるので実行頻度に注意してください。
コメント