API活用 Python関係

統計ダッシュボードAPIでデータ取得 その2~スプレッドシートに書き込んでみる~

前回のエントリー

前回は統計ダッシュボードAPIの詳細と、Googleドライブ(スプレッドシート)のAPI登録、秘密鍵のダウンロードまでやりました。

リンクはこちら↓

統計ダッシュボードAPIでデータ取得 その1~前準備~

続きを見る

スプレッドシートを共有する

早速コーディング・・・の前に、使用するスプレッドシートを作っておきます。

step
1
スプレッドシート新規作成

Googleドライブにアクセスし、新規作成からスプレッドシートを選択

シートの名前は適当に「サンプルシート」としました。

step
2
シートの共有設定

次にシートの右上に共有のボタンがあるのでこれをクリック

他のユーザーと共有というウインドウが現れるので、ここに前回取得したJSONキーの中に書いているメールアドレスを入力します。

JSONファイルをメモ帳などで開くとこんな感じになっているので、赤塗りになっている"client_email"の部分をコピーして貼り付けてください。

送信をクリック。

これでスプレッドシートの共有作業は完了です。

Pythonで編集するスプレッドシートはすべてこの作業が必要です。

モジュールのインストール

PythonからGoogleドライブのAPIを使うには「gspread」と「oauth2client」が必要なので、pipでインストールします。

$ pip install gspread
$ pip install oauth2client

※Python環境導入については他のサイトを参照ください。

プログラムの作成

Googleスプレッドシートにとりあえず「Hello World!」と書き込むプログラムを作成します。

ファイル名:spread_sample.py

import gspread
from oauth2client.service_account import ServiceAccountCredentials

scope = ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive'] credentials = ServiceAccountCredentials.from_json_keyfile_name('<JSONファイル名>.json', scope) gc = gspread.authorize(credentials) wks = gc.open('サンプルシート').worksheet('シート1') wks.update_acell('A1', 'Hello World!')

JSONファイル名は前回ダウンロードしたJSONファイルの名前を指定してください。

コードの9行目について、今回書き込むシートのシート名を直接指定しましたが(下図)

一番先頭のシート(一番左側)を編集したい場合は下記の様にしても大丈夫です。

wks = gc.open('サンプルシート').sheet1

ただ、二つ目のシートを下の様に指定することはできないんですよねぇ。エラーになると思います。

wks = gc.open('サンプルシート').sheet2

だから私は素直にシート名を直接指定しています。統計データを扱う場合は、複数のシートを使う場合が多いですし。

プログラムの実行

プログラムを実行すると・・・

$ python spread_sample.py

ちゃんとスプレッドシートにHello World!と書き込まれました!!

ポンッ! と”Hello World!”の文字が現れた瞬間は何とも言えない達成感がありますw

次は統計データの取得と書き込み

ここまで出来たらあとは、統計データを読み込んできて書き込むだけですね。

 

・・・というわけで、続きは次回に(汗)

すみません、次で最後です。

 

次のエントリー

統計ダッシュボードAPIでデータ取得 その3~スプレッドシートに書き込みグラフをブログに公開する~

続きを見る

 

-API活用, Python関係

Copyright© データエンジニアのひとりごと , 2020 All Rights Reserved.