プログラミング

【Python】PythonでGoogleスプレッドシートを操作する方法

どうも、とがみんです。

この記事では、PythonでGoogleスプレッドシートを操作するにあたって、必要な設定方法と、読み書きする方法について紹介していきます。

今回目指すもの

下の動画は、スプレッドシートから読み取った数に10を掛け、その結果をスプレッドシート に書き込んでいます。

Googleスプレッドシートを操作するための準備

「Google Cloud Platform」のページを開き、Googleスプレッドシートを操作するための準備を行なっていきます。

新しいプロジェクトの作成

「Google Cloud Platform」のページで新しいプロジェうとを作成します。

プロジェクトの選択を選択し、表示されたモーダル右上の新しいプロジェクトを選択します。

プロジェクト名を入力し、作成ボタンを押します。

GoogleAPIの有効化

PythonからGoogleスプレッドシートを操作するにあたって、「Google Drive」と「Google Sheets」のAPIを有効にします。

ライブラリを選択します。

以下のような画面に遷移するので「Google Drive」と「Google Sheets」を検索して有効化します。

有効化されているかどうかは、ダッシュボードから確認することができます。

認証情報の設定

外部アプリケーションからGoogleスプレッドシートにアクセスするために必要な情報を作成します。

認証情報を選択し、認証情報を作成を選択します。

そして、サービス アカウント キーを選択します。

次に「サービス アカウント キー」を作成するにあたって必要な情報を入力していきます。

役割は全てのリソースに編集アクセス権限が与えられる編集者にしています。

作成すると以下のような画面になり、JSON形式のファイルがPCに保存されます。

これで、認証情報の設定は完了です。

スプレッドシートの権限の設定

次に、Googleスプレッドシートに読み書きが行えるように設定します。

PCに保存されたJSON形式のファイルを開き、client_emailの値をコピーし、以下のユーザー欄に貼り付け、送信ボタンを押します。

これで、Googleスプレッドシートを操作するための準備が完了です。

Pythonで実際に読み書きしてみる

必要なライブラリをインストール

ターミナルを開き「gspread」と「oauth2client」ライブラリをインストールします。

「gspread」はGoogleスプレッドシートを操作するためのライブラリで、

「oauth2client」はGoogleの各種APIへアクセスするためのライブラリです。

$ pip install gspread
$ pip install oauth2client

認証情報の設定とスプレッドシートの取得

認証情報の設定とスプレッドシートの取得までの記事です。

スプレッドシートのキーとは、スプレッドシートを開いた時のURLの以下のスプレッドシートのキーの部分です。

https://docs.google.com/spreadsheets/d/スプレッドシートのキー/edit#gid=0

スプレッドシートの読み込み・加工・書き込み

以下のコードで、スプレッドシート の1列目の情報を読み取ります。

以下のコードで、読み込んだデータそれぞれに10をかけています。

以下のコードで、加工したデータをスプレッドシートに書き込みます。

>gsspread|python

まとめ

PythonでGoogleスプレッドシートを操作する方法について紹介しました。

参考文献

>【もう迷わない】Pythonでスプレッドシートに読み書きする初期設定まとめ

>gspreadで指定行にまとめて書き込み