此次整理了 pygsheets – Google Spreadsheets Python API 的官方文件,了解如何用 Python 串接 Google Sheet 來當作資料庫使用,從 Pygsheets 安裝、Python連結 Google Sheet API、到基礎資料庫的 CRUD 應用,本篇描述 Python 做 GoogleSheet 的新增欄位 Create、讀取資料 Read、更新數據 Update 和刪除Delete,提供大家參考。
Table
ㄧ. Python 連結 Google Sheet API
1. 首先建立 Google Cloud Platform 帳號,選擇 Google Sheet API 啟用

2. 點選建立憑證 > 服務帳戶,並將金鑰 json 檔儲存於桌面。
3. 在 Google Sheet 裡面,授權給剛剛在 GCP 申請的服務帳號 ID

以上就完成基礎設定了~
二. Python 新增 GoogleSheet 資料
安裝 pygsheets 套件:
1 |
$pip3 install pygsheets |
初始設定 import 這次會使用到的 pygsheets 外,gc 這邊是告訴 Python 我們的授權金鑰 json 放置的位子。
1 2 |
import pygsheets gc = pygsheets.authorize(service_file='/Users/max/Desktop/Google python.json') |
1.利用 Python 開啟 GoogleSheet
1 2 3 |
sht = gc.open_by_url( 'https://docs.google.com/spreadsheets/d/1Mx2Xzv-WJnQuE0AyCo-DGHMVdmOrLAr7akrf8_rwwL4/' ) |
2.查看此 GoogleSheet 內 Sheet 清單
1 2 |
wks_list = sht.worksheets() print(wks_list) |
3.選取要 Sheet 清單
1 2 3 4 5 6 7 8 9 10 11 |
#選取by順序 wks = sht[0] #選取by名稱 wks2 = sht.worksheet_by_title("Sheet2") #更新名稱 wks.title = "NewTitle" #隱藏清單 wks.hidden = False |
三. Python 讀取 GoogleSheet 資料
Python 做 GoogleSheet 讀取資料的部分,除了匯出成 CSV 處理外,也可以單獨用 cell 讀取 value 或是欄位。
1 2 3 4 5 6 7 8 9 10 |
#讀取 A1 = wks.cell('A1') A1.value #讀取成 df df = pd.DataFrame(wks.get_all_records()) #讀取 df 也可以這樣寫 wk1.get_as_df() #匯出CSV wks.export(pygsheets.ExportType.CSV) |
四. Python 更新 GoogleSheet 資料
Python 做 GoogleSheet 的修改資料,利用 update_cell 語法可以修改單獨欄位的值,update_cells 可以修改多個欄位。
1 2 3 4 5 6 |
# dataframe to worksheet wk1.set_dataframe(df, 'A1') #從欄位 A1 開始 # Update wks.update_cell('A1', "Hey yank this numpy array") wks3.update_cells('A2:A5',[['name1'],['name2'],['name3'],['name4']]) |
五. Python 刪除 GoogleSheet 資料
Python 做 GoogleSheet 利用 clear 可清除所有值,del_worksheet 可刪除Sheet。
1 2 3 4 5 |
# 清除sheet內所有值 wks.clear() # 刪除sheet sht.del_worksheet(wks) |
六. Python 串接 GoogleSheet 的其他應用
set_dataframe :可以匯入 Dataframe 資料
share :可以授權權限
remove_permissions: 移除權限語法
1 2 3 4 5 6 7 8 |
#在資料最後面,匯入 Dataframe wks.set_dataframe(df, start = "A"+str(len(wks.get_all_values())+1) ,copy_head=False) # 授權 # 移除權限 |
延伸閱讀:
- 【資料庫筆記】 Python 使用 MySQL資料庫的教學與安裝
- 【資料庫筆記】Python 使用 BigQuery 的操作與安裝
- 【資料庫筆記】 Flask-SQLAlchemy 資料庫連線&設定入門(一)
- 【資料庫筆記】 Flask-SQLAlchemy 資料庫操作-ORM篇(二)
那 [資料庫筆記] Python 串接 GoogleSheet 新增、讀取、更新和刪除 就到這邊感謝收看,如文章內容有誤請不吝指正!