【发布时间】:2023-03-30 01:28:01
【问题描述】:
我正在尝试通过 gspread 打开 google 电子表格,但我的代码失败并出现错误:
Traceback (most recent call last):
File "/home/memcpy/.local/lib/python3.6/site-packages/google/oauth2/_client.py", line 156, in jwt_grant
access_token = response_data["access_token"]
KeyError: 'access_token'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "email_sender.py", line 20, in <module>
fetch_users()
File "email_sender.py", line 16, in fetch_users
sheet = client.open('some')
some more tracebacks....
File "/home/memcpy/.local/lib/python3.6/site-packages/google/auth/transport/requests.py", line 444, in request
self.credentials.before_request(auth_request, method, url, request_headers)
File "/home/memcpy/.local/lib/python3.6/site-packages/google/auth/credentials.py", line 133, in before_request
self.refresh(request)
File "/home/memcpy/.local/lib/python3.6/site-packages/google/oauth2/service_account.py", line 359, in refresh
access_token, expiry, _ = _client.jwt_grant(request, self._token_uri, assertion)
File "/home/memcpy/.local/lib/python3.6/site-packages/google/oauth2/_client.py", line 159, in jwt_grant
six.raise_from(new_exc, caught_exc)
File "<string>", line 3, in raise_from
google.auth.exceptions.RefreshError: ('No access token in response.', {'id_token': 'there was some token so I hided it'})
我试图用谷歌搜索该错误,但没有找到任何相关信息。这是我的代码:
import gspread
from google.oauth2.service_account import Credentials
scope = [
'https://googleapis.com/auth/drive',
'https://googleapis.com/auth/spreadsheets'
]
creds = Credentials.from_service_account_file('creds.json', scopes=scope)
client = gspread.authorize(creds)
sheet = client.open('some')
【问题讨论】:
-
在您的情况下,当使用电子表格 ID 时,如
sheet = client.open_by_key("###"),您将检索到什么结果? -
你找到解决办法了吗??