如何使用 csv 中的 Pydrive 从 Google Sheet 下载特定的 sheet
How to download a specific sheet from Google Sheet with Pydrive in csv
如果我需要使用 Python 和 pydrive 下载特定的 google sheet 我可以使用像这样的简单命令:
drive.CreateFile({'id':'[sheetID]}).GetContentFile('file.csv', mimetype='text/csv')
这有效,但是,在这种情况下,我仅以 CSV 格式下载 Google 文件的 first sheet。
如果此文件中有 多个 sheets 并且我需要下载特定的 sheet,也许通过我可以在中看到的 ID URL“...edit#gid=111115555”,如何更改命令?
我想下载一个sheet,不管这个位置或名称。
你能帮帮我吗?
提前致谢
我相信你的目标如下。
- 您想下载 Google Spreadsheet 中的特定 sheet 作为 CSV 数据。
- 您想通过 python.
使用 pydrive 来实现您的目标
很遗憾,我在pydrive中找不到直接实现你的目标的方法。因此,在这个答案中,我想提出一个解决方法来实现您的目标。在此解决方法中,访问令牌是从 pydrive 的授权脚本中检索的,并使用访问令牌直接请求端点。示例脚本如下
示例脚本:
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
import requests
# Script for authorization of pydrive.
gauth = GoogleAuth()
gauth.LocalWebserverAuth()
# Download the specific sheet in Google Spreadsheet as a CSV data.
spreadsheetId = '###' # Please set the Spreadsheet ID.
sheetId = '###' # Please set the sheet ID. (GID)
url = 'https://docs.google.com/spreadsheets/d/' + spreadsheetId + '/gviz/tq?tqx=out:csv&gid=' + sheetId
headers = {'Authorization': 'Bearer ' + gauth.credentials.access_token}
res = requests.get(url, headers=headers)
with open('file.csv', 'wb') as f:
f.write(res.content)
- 当上面的脚本是运行时,
spreadsheetId
的Spreadsheet中sheetId
的特定sheet被下载为CSV数据并创建它作为文件。
如果我需要使用 Python 和 pydrive 下载特定的 google sheet 我可以使用像这样的简单命令:
drive.CreateFile({'id':'[sheetID]}).GetContentFile('file.csv', mimetype='text/csv')
这有效,但是,在这种情况下,我仅以 CSV 格式下载 Google 文件的 first sheet。
如果此文件中有 多个 sheets 并且我需要下载特定的 sheet,也许通过我可以在中看到的 ID URL“...edit#gid=111115555”,如何更改命令?
我想下载一个sheet,不管这个位置或名称。
你能帮帮我吗?
提前致谢
我相信你的目标如下。
- 您想下载 Google Spreadsheet 中的特定 sheet 作为 CSV 数据。
- 您想通过 python. 使用 pydrive 来实现您的目标
很遗憾,我在pydrive中找不到直接实现你的目标的方法。因此,在这个答案中,我想提出一个解决方法来实现您的目标。在此解决方法中,访问令牌是从 pydrive 的授权脚本中检索的,并使用访问令牌直接请求端点。示例脚本如下
示例脚本:
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
import requests
# Script for authorization of pydrive.
gauth = GoogleAuth()
gauth.LocalWebserverAuth()
# Download the specific sheet in Google Spreadsheet as a CSV data.
spreadsheetId = '###' # Please set the Spreadsheet ID.
sheetId = '###' # Please set the sheet ID. (GID)
url = 'https://docs.google.com/spreadsheets/d/' + spreadsheetId + '/gviz/tq?tqx=out:csv&gid=' + sheetId
headers = {'Authorization': 'Bearer ' + gauth.credentials.access_token}
res = requests.get(url, headers=headers)
with open('file.csv', 'wb') as f:
f.write(res.content)
- 当上面的脚本是运行时,
spreadsheetId
的Spreadsheet中sheetId
的特定sheet被下载为CSV数据并创建它作为文件。