隅田川沿いを歩きつつ

歩きながら考えたことや感じたこと

Search ConsoleのAPIを使ってみる

Google Analytics API に続き、Search Console API にも挑戦してみました。

Search Console API は情報が少なかったり、公式のサンプルが動かせなかったりして苦労しました。

参考ページ

いろんなページで参考にできそうなコードを探したのですが、どれも似ていました。

今回は、こちらのページのコードを参考にさせていただきました。

inasala.com

コードはこちら

jupyter notebook(VSCode 版)で実行したので、その流れで書きます。

まず、pandasと必須のライブラリをインポートします。

import pandas as pd
from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials

Google Cloud Platformでダウンロードしたkeyのjsonと自分のURL(今回はこのブログ)を設定します。

scope = ['https://www.googleapis.com/auth/webmasters.readonly']
key_file_location = 'client_secrets.json'
url = 'https://yuuuha.hatenablog.com/'

上で読み込んだ情報を読み込みます。

credentials = ServiceAccountCredentials.from_json_keyfile_name(key_file_location, scope)
webmasters = build('webmasters', 'v3', credentials=credentials)

期間を設定します。

dimensions_list = ['query', 'page']
start_date = '2022-03-17'
end_date = '2022-04-13'
row_limit = 50

上で読み込んだものを設定します。

request = {
    'startDate': start_date,
    'endDate': end_date,
    'dimensions': dimensions_list,
    'rowLimit': row_limit
}
response = webmasters.searchanalytics().query(siteUrl=url, body=request).execute()

DataFrameに読み込みます。

df = pd.json_normalize(response['rows'])
for i, dimension in enumerate(dimensions_list):
    df[dimension] = df['keys'].apply(lambda row: row[i])
df = df.drop(columns='keys')

最後に表示させます。

df

まだ数字が少ないので、分析できないです。。

コードの内容はあまり理解できていないので、ちょっとずつ理解していきたいと思います。

yuuuha.hatenablog.com