【发布时间】:2022-01-11 19:54:53
【问题描述】:
对于编程方面的一切都是全新的!请像我一无所知一样对待我。我遵循了 Python 的 Google Docs API 快速入门。我收到了错误
FileNotFoundError: [Errno 2] 没有这样的文件或目录:'credentials.json'
据我了解,这是因为文件路径不正确,但我不知道如何修复它。任何帮助深表感谢。这是源代码。
from __future__ import print_function
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build
from googleapiclient.errors import HttpError
# If modifying these scopes, delete the file token.json.
SCOPES = ['https://www.googleapis.com/auth/documents.readonly']
# The ID of a sample document.
DOCUMENT_ID = '195j9eDD3ccgjQRttHhJPymLJUCOUjs-jmwTrekvdjFE'
def main():
"""Shows basic usage of the Docs API.
Prints the title of a sample document.
"""
creds = None
# The file token.json stores the user's access and refresh
tokens, and is
# created automatically when the authorization flow completes
for the first
# time.
if os.path.exists('token.json'):
creds = Credentials.from_authorized_user_file('token.json',
SCOPES)
# If there are no (valid) credentials available, let the user
log in.
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'credentials.json', SCOPES)
creds = flow.run_local_server(port=0)
# Save the credentials for the next run
with open('token.json', 'w') as token:
token.write(creds.to_json())
try:
service = build('docs', 'v1', credentials=creds)
# Retrieve the documents contents from the Docs service.
document =
service.documents().get(documentId=DOCUMENT_ID).execute()
print('The title of the document is:
{}'.format(document.get('title')))
except HttpError as err:
print(err)
if __name__ == '__main__':
main()}
【问题讨论】:
-
文件存储在哪里?项目中有很多文件夹吗?
-
文件存储在“我的文件/Linux文件/quickstart.py”(quickstart是我命名的。我想使用这个功能的项目存储在“我的文件/Linux文件/维护应用程序”
-
您尝试过以下解决方案吗?它的第一部分在
SCOPES行下添加它,而另一部分flow已经在您只需要修改它的代码上。另外,为什么不将所有文件都放在与快速入门相同的文件夹下?
标签: python python-3.x google-api google-drive-api google-api-python-client