目次
「Googleスプレッドシートを開いて 1行目を私のパソコンのデスクトップにあるExcelファイルに書き込んでくれ」って言葉でしゃべったら勝手に動いてくれると最高に仕事も楽になるのでしょうが、そんな世界は、まだまだ先でしょう。
Googleスプレッドシートにアクセスする必要がある
プログラムというのは明確な指示を出さなければ動いてくれません。
まず、Googleスプレッドシートを操作するためには、Googleスプレッドシートを開く必要があります。
人間は、Googleスプレッドシートのファイルの中のシートを編集するためにを以下のようなアクションを取っていると思います。
ブラウザを開いて
↓
Googleのアカウントでログインをして
↓
Googleスプレッドシートのページを開く
↓
ファイルを開いて
↓
編集したいシートを選択する
↓
編集する。
ざっくりと書くとこんな感じでしょう。(もっと細かい作業を人間はしています。)
Pythonのプログラムにもそのような事を書いていかないといけません。
Googleスプレッドシートにアクセスするためのプログラムなんか書けないよっていうのが普通だと思います。わたしも0から作れといったら100年以上はかかるでしょうね。
でも、とんでもない頭のいい人が簡単にアクセスできるプログラムを作ってくれています。
それが、前の記事でも書いた先人の知識の本です。
gspread
oauth2client
というライブラリにその天才がつくったコードがあります。それを利用すれば、以外と簡単にGoogleスプレッドシートにアクセスできてしまうのです。
Googleスプレッドシートにアクセスするための壁
Googleスプレッドシートは、「開けゴマ」では開いてくれません。
上で書いたフローで考えるとページを開く必要があります。
Googleスプレッドシートは、Googleドライブで保存されているようなものなので、この二つにアクセスできるようにしなければなりません。
それを可能にするのがGoogle API です。
APIって何かって言うと 「Application Programming Interface」の頭文字ですから。イメージはプログラムで繋ぐって感じですね。
となると GoogleスプレッドシートとGoogleドライブのAPIを使ってつなげればいいんだなって感じになります。
そのAPIっていうのも繋ぎやすいようにGoogleの天才プログラマーさん達が世に公開しています。
となるとまずは、Google APIを使えるようにする必要があるなってなりますよね。
Google Drive API Google Sheets APIの設定
プロジェクトを新規で作成する
Google API コンソールに行き、CREATE PROJECT という赤丸で囲んだ所をクリックしてください。。
プロジェクト名を入力します。私は、「Google sheets API」と入力しました。組織は、ドメイン内にしています。
Google Drive APIとGoogle Sheets APIを有効にする
APIとサービスの有効化を押す
Google Drive APIを選択
Google Drive APIの有効にするボタンを押す
同様に Google Sheets APのI有効にするボタンを押す
有効になっていれば、ダッシュボードで以下のように確認できます。
認証情報の設定
次にあなたが管理しているGoogleドライブとGoogleスプレッドシートにアクセスできる鍵を取得する必要があります。
だれでも勝手に部屋に入り込まれては困りますよね。家の鍵のイメージです。
サービスアカウントキーの作成
鍵を作ると考えてください。
以下の画面のように
サイドバーの認証情報を選択
↓
認証情報を作成を選択
↓
サービスアカウントを選択してください。
サービスアカウントの作成画面で サービスアカウント名と説明をいれて作成ボタンを押してください。
役割は、編集ができるように 編集者 を選択します。
保存するデータがJSONファイルとして、作成ボタンを押してください。
秘密鍵がパソコンに保存されました。
認証情報画面のサービスアカウントキーのところに設定されていればOKです。
Googleスプレッドシートにアクセスできるように設定
JSONファイルをメモ帳(エディター)で開く
保存した秘密鍵 のJSONファイルをメモ帳(エディター)で開いて見ます。
“client_email”: “×××@○○○○.com”
のような箇所があります。そこの ×××@○○○○.com を活用しますので
ここをコピーしてください。
Googleスプレッドシートに接続できるようにする
先ほど設定したアカウントでGoogleスプレッドシートを開いて新規でシートを作成しましょう。シート名はなんでも良いです。
先ほどコピーした client_email を貼り付けてください。
編集者を選択してPythonで編集ができるようにします。
送信ボタンを押せば設定は完了です。
これで、この シートにアクセスできるように設定ができました。
これでJSONファイル(秘密鍵)をPythonのプログラムに記載すれば、プログラムを実行することでGoogleスプレッドシートに書いたり、取得したり色々なことがプログラムを通してできるようになります。
1時間当りのおおよそのコンサル料金・おおよその月額サービス料・Myサイト・連絡先
1時間当りのおおよそのサービス料金
円 ※あくまでも目安であり連絡先を交換して交渉してください。
おおよその月額サービス料
円 ※あくまでも目安であり連絡先を交換して交渉してください。
電話番号
メールアドレス
サイト
コメント