如何透過Python建立Google試算表:使用Google Sheet API

Yanwei Liu
Jan 6, 2019 · 5 min read

#20191224更新從Python存取試算表的方法

本文透過gspread模組去讀取Google Sheet常用的函式如下:#更新儲存格
update_acell()和update_cell()
#插入新列
insert_row()
#讀取儲存格
acell()和cell()
#讀取整列或整欄
row_values()和col_values()
#傳回整個工作表
get_all_values()

本文分成兩部分,Part1是API申請,Part2是Python程式

Part1:API申請

進入 https://console.developers.google.com/,並依圖點選
點擊新增專案
輸入專案名稱並建立
啟用API
搜尋Google Sheet,並且點擊進去
點擊啟用
回到主控台,點擊憑證→建立憑證
選擇服務帳戶金鑰
依個人狀況進行輸入
此時會將金鑰(Json格式)保存至電腦中,請妥善保管
回到雲端硬碟,新增Google試算表
新增共用,信箱為服務帳戶ID(參考上面的步驟)
記下此組key,等下會用到

Part2:Python程式 ( 新增一筆資料 )

pip install gspread
pip install oauth2client
import gspread
from oauth2client.service_account import ServiceAccountCredentials
auth_json_path = '你的金鑰檔案.json'
gss_scopes = ['https://spreadsheets.google.com/feeds']
#連線
credentials = ServiceAccountCredentials.from_json_keyfile_name(auth_json_path,gss_scopes)
gss_client = gspread.authorize(credentials)
#開啟 Google Sheet 資料表
spreadsheet_key = '你的Google表單Key'
#建立工作表1
sheet = gss_client.open_by_key(spreadsheet_key).sheet1
#自定義工作表名稱
#sheet = gss_client.open_by_key(spreadsheet_key).worksheet('測試1')
#Google Sheet 資料表操作(舊版)
sheet.clear() # 清除 Google Sheet 資料表內容
listtitle=["姓名","電話"]
sheet.append_row(listtitle) # 標題
listdata=["Liu","0912-345678"]
sheet.append_row(listdata) # 資料內容
#Google Sheet 資料表操作(20191224新版)
sheet.update_acell('D2', 'ABC') #D2加入ABC
sheet.update_cell(2, 4, 'ABC') #D2加入ABC(第2列第4行即D2)
#寫入一整列(list型態的資料)
values = ['A','B','C','D']
sheet.insert_row(values, 1) #插入values到第1列
#讀取儲存格
sheet.acell('B1').value
sheet.cell(1, 2).value
#讀取整欄或整列
sheet.row_values(1) #讀取第1列的一整列
sheet.col_values(1) #讀取第1欄的一整欄
#讀取整個表
sheet.get_all_values()

參考書籍:

Yanwei Liu

Written by

Data Science / Front End / Python / Flutter cakeresume.com/yanwei-liu

More From Medium

Related reads

Related reads

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade