No project description provided
Project description
Google Sheets 下載器
這是一個能夠下載 Google Sheets 試算表的小工具。使用者可以輸入 Google 服務帳戶金鑰、試算表 ID、輸出資料夾路徑等資訊,程式會利用 Google Sheets API 下載資料並存成 CSV 檔案。
使用說明
2023-05-12 15:23 小積木塊 google-sheet-downloader v1.0.2 Release Notes by Bowen Chiu
Google Sheets 下載器: 這是一個能夠下載 Google Sheets 試算表的小工具。使用者可以輸入 Google 服務帳戶金鑰、試算表 ID、輸出資料夾路徑等資訊,程式會利用 Google Sheets API 下載資料並存成 CSV 檔案。
特色: . 支援快取功能,曾經下載過的 google sheet document id 就不會再下載,飛快 . 支援多個檔案下載 . 支援一個 spreadsheet 當中所有的 worksheet 下載轉換為多個 .csv 檔案
使用: . 可以 CLI 運用 command line 可操作 . 可以 pip install package 當成套件呼叫無須用 CLI 也能呼叫
安裝: python3 -m pip install google-sheet-downloader
用法: usage: google_sheet_downloader.py [-h] --key-file KEY_FILE --sheet-ids SHEET_IDS --output-folder OUTPUT_FOLDER [--force]
詳細說明
- 申請 Google 服務帳戶金鑰
- 進入 Google Cloud Console
- 建立一個專案或使用現有的專案
- 選擇左上角的導覽功能表 > API 和服務 > 憑證
- 在「憑證」頁面中點擊「建立憑證」,然後選擇「服務帳戶」
- 填寫相關資訊,完成後下載 JSON 金鑰檔案
- 安裝 Python 3.x
- 安裝相依套件
pip install -r requirements.txt
- 執行程式
python main.py --key-file <金鑰檔案路徑> --sheet-ids <試算表 ID> --output-folder <輸出資料夾路徑>
可以同時下載多個試算表,試算表 ID 以逗號分隔。 可以使用--force
強制重新下載資料,忽略快取的檢查。
參數說明
--key-file
:必填參數,Google 服務帳戶金鑰的 JSON 檔案路徑--sheet-ids
:必填參數,要下載的試算表 ID,以逗號分隔--output-folder
:必填參數,下載完成後要存放 CSV 檔案的資料夾路徑--force
:選填參數,是否強制重新下載,忽略快取檢查,預設為False
注意事項
- 程式下載的 CSV 檔案以試算表 ID、試算表名稱、工作表名稱作為檔案名稱。
- 如果輸出資料夾已經有相同檔名的 CSV 檔案,程式不會覆蓋原本的檔案,也不會下載該工作表的資料。
- 下載的 CSV 檔案編碼為 UTF-8,換行符號為 CRLF。
自然語言原始設計
001 用途描述:
本專案提供一個命令列工具,用於下載多個 Google 試算表並將其儲存在指定資料夾中。它具有類似緩存功能,如果已經下載過某個試算表,則會跳過該試算表,避免重複下載。
002 程式碼檔名:
google_sheet_downloader.py
003 可單元測試的功能描述:
T01 一次可下載多個 Google 試算表並儲存為 CSV 檔案到指定路徑 T02 檢查已下載的試算表,避免重複下載,已經下載過的相當於有快取 T03 執行參數可以強迫重新下載試算表,忽略快取 T04 要單獨一個處理 argparse 的 function(只有呼叫 cli會用到), 要單獨獨立一個接收 argparse 參數的 function(為了做成套件給別人呼叫用,別人用套件時不會用到 cli)
004 輸入目錄結構設計:
./users/bohachu_gmail_com/github/bohachu/google_sheet_downloader/google_sheet_downloader.py
./users/bohachu_gmail_com/github/bohachu/google_sheet_downloader/keys/google_service_account_key.json
005 輸入檔案格式設計:
google_service_account_key.json
: Google 服務帳戶的密鑰 JSON 檔案
006 輸出目錄結構設計:
./users/bohachu_gmail_com/github/bohachu/google_sheet_downloader/data/sheets_output/spreadsheet_試算表名字_worksheet_頁籤名字_doc-id_14GQkXftKXoaIJ_TKxtXzae1J7p10XznGgF_lg7cDG8g.csv
007 輸出檔案格式設計:
- 輸出檔案為 CSV 格式,一個 CSV 代表一個 worksheet 頁籤資料。
008 命令列用法:
python3 -m google_sheet_downloader --key-file <service_account_key.json> --sheet-ids <sheet_id1,sheet_id2> --output-folder <sheets_output>
009 命令列範例:
python3 -m google_sheet_downloader --key-file google_service_account_key.json --sheet-ids 1a2B3c4D5e6F,1x2y3z4A5B --output-folder sheets_output
CLI 參數設計:
--key-file
: Google 服務帳戶的密鑰 JSON 檔案路徑--sheet-ids
: 要下載的多個 Google 試算表的 ID,以逗號分隔--output-folder
: 輸出 CSV 檔案的資料夾路徑
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for google-sheet-downloader-1.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 348c46e0a403b507c99268497835338c7f57aa6c24036a851ac482a04e8eea48 |
|
MD5 | 68e8616ac4ca00e57d606c4011f44805 |
|
BLAKE2b-256 | 34e4fff68394d77cc0891480948c0486d73182b47e3589f018ab4a13eeb2b84a |
Hashes for google_sheet_downloader-1.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b75c5a018c8ca66c098eb32cad5b1ade6c5aacd8905498b4f705a462a44c51a |
|
MD5 | 1125319cccc564989eda2425ad352a48 |
|
BLAKE2b-256 | 880dbce0fb1ac1c473320bf826f761b3097fd43741206c040175d6b747fdcae0 |