Python プログラミング

【Python】Google検索のナレッジパネル情報をAPIを使って取得する

この記事は約5分で読めます。

 

こんにちは、ミナピピン(@python_mllover)です。今回はGoogleのナレッジパネルのAPIを業務で調査したのでその結果をブログにメモっておこうと思います。

 

関連記事:【Python】GoogleMapのスクレイピング情報から施設情報を取得する

関連記事:【Python】Custom Search APIを使ってGoogle検索をスクレイピングで自動取得する

 

ナレッジパネルとは

 

ナレッジパネルとはGoogle検索で有名な人物や施設名を検索した時に右側に表示されるパネルのことです。

 

 

これらによるとGoogle検索の右側に表示される「ナレッジパネル」の情報は、「ナレッジグラフ」をもとにしているようです。

 

事前準備

 

・API鍵の取得

参考記事:【GCP】GoogleCloudPlatformでプロジェクトを作成してAPI鍵の作成&有効化する

 

・knowledgegraphAPIの有効化

API鍵が取得できたらいつもどおり、コンソール画面左メニューの「APIとサービス」⇒「ライブラリ」で適当にknowledgeとでも検索してknowledgegraphAPIを有効化します。

 

 

これで事前準備は完了です。

 

スポンサーリンク
スポンサーリンク

PythonでGoogle検索のナレッジパネル情報を取得する

 

APIドキュメント:https://developers.google.com/knowledge-graph

 

import json
import urllib
import urllib.request


api_key = '自分のAPI鍵'
query = 'イチロー'
service_url = 'https://kgsearch.googleapis.com/v1/entities:search'
params = {
    'query': query,
    'limit': 100,
    'indent': True,
    'key': api_key,
    'languages':'ja'
}
url = service_url + '?' + urllib.parse.urlencode(params)
response = json.loads(urllib.request.urlopen(url).read())
for element in response['itemListElement']:
    print(element['result']['name'] + ' (' + str(element['resultScore']) + ')')

 

公式ドキュメントに書いてあったサンプルコードは古くてそのまま実行するとエラーになったので一部書き直しています。

 

参考:https://teratail.com/questions/51894

参考:https://itips.krsw.biz/module-urllib-has-no-attribute-urlopen/

参考:https://technodaifuku.blogspot.com/2021/01/googleapigoogle-knowledge-graph-search.html

 

<実行結果>

イチロー (3831.06689453125)
イチロー! (232.9041748046875)
プロ野球死亡遊戯 (65.48111724853516)
天谷宗一郎 (42.90169143676758)
橋本 到 (36.56979370117188)
イチローナガタ (29.96886253356934)
新田一郎 (25.08950233459473)
イチロー・カワチ (18.96537208557129)
榎本葵 (16.53150367736816)
イチローの流儀 (11.63956546783447)
走れ!イチロー (11.00639820098877)
イチロー杯争奪学童軟式野球大会 (10.34025192260742)
キューイチロー (8.707777976989746)
実践型クリティカルシンキング (8.031513214111328)
プロ野球をここまでダメにした9人 (7.804562568664551)
成功する人は心配性 (7.46633768081665)

 

イチロー以外にも、イチロー関連の著書もヒットしています。ただこのAPIはイチローレベルの超有名人ならAPIのレスポンスにちゃんと出てくるのですが、そこまで有名でない企業などGoogle検索ではナレッジパネルで表示されていてもAPI経由だと検索にヒットしないパターンが多いので、実用的かと言われるとかなり微妙だと思います。ただ調べた時間をそのまま無駄にするのもアレなので記事にして供養しておきます。

 

では~

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました