はじめに
Python初学者のわたしが覚えるために、学んだことを整理し、理解を深めるために記事を書いています。
スプレッドシートと連携するためには、たくさんのモジュールが登場します!
「これって何をするやつ?」「なんで必要なの?」と混乱してしまっています!なので、それぞれの役割と実際の活用例と一緒に整理します!
①gspread(ジー・スプレッド)
これでスプレッドシートを操作できるようになる!!
役割:スプレッドシートを開く、読み込む、書き込むなどを操作をする
import gspread: Pythonのスプシのモジュールを使えるようにする
gspread.authorize(creds)(ジースプレッド.オーソライズ クレッド)
・gspread の関数
・Client というクラス があって、そこから呼び出している!
client.open_by_key():Clientのメソッド!でスプレッドシート開く
難しいです!図にして理解する方が私はイメージできました!
図にして理解
gspreadモジュール
┗ Clientクラス
┗ open_by_key() 関数(クラス内)
↓
client = Clientのインスタンス
client.open_by_key() ← メソッドとして呼び出している
import gspread
# 認証情報を使って接続(ドアを開ける)
client = gspread.authorize(creds)
#作ったClientを使って、スプレッドシートを開く
spreadsheet = client.open_by_key("スプシID")
②os(Operating System)
これでパソコンの機能を使うための標準モジュール
役割:今回は環境変数の.envファイルの中身を取り出すことに使う
import os
# .envファイルからIDを取り出す
json_name = os.getenv("SECRET_KEY_JSON")
③sys(System)
Pythonそのものの設定や動作を操るための標準モジュール
役割:今回は隣のフォルダにあるファイルを読み込むために使用
import sys
#Pythonが探すがファイルを指定 今回は親ディレクトリを探して
sys.path.append("../")
④pathlib
ファイルやフォルダの住所を扱うためのモジュール
役割:「親フォルダ」や「結合」などを簡単にすることができる!
結合ってなに??「フォルダとファイル名を結合する」とは、ファイルのフルパスを作るということ!
from pathlib import Path
json_name = "creds.json"
# 今のファイルの「2つ上の階層(ルート)」を取得
parents_dir = Path(__file__).parents[1]
# フォルダとファイル名を合体!「/」で繋げられるのが pathlib
json_path = parents_dir / json_name
まとめ
今回は4つをまとめました。他にもあるため、次にまとめます!
たくさんimportが出てくるので、これは何のため?って分からなくなってしまうので、今回は頭の整理でした!