Я использую скрипт Python для загрузки файла с Google Диска, используя определенный идентификатор файла. Для доступа к диску я использую активный ключ сервисной учетной записи, сохраненный в рабочем каталоге как Credentials.json.
from googleapiclient.discovery import build
from googleapiclient.http import MediaIoBaseDownload
from google.oauth2 import service_account
import io
credz = {"credentials.json"} #json credentials here from service account
credentials = service_account.Credentials.from_service_account_info(credz)
drive_service = build('drive', 'v3', credentials=credentials)
file_id = 'file_ID'
request = drive_service.files().get_media(fileId=file_id)
#fh = io.BytesIO() # this can be used to keep in memory
fh = io.FileIO('file.tar.gz', 'wb') # this can be used to write to disk
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
status, done = downloader.next_chunk()
print("Download %d%%." % int(status.progress() * 100))
Однако при каждом запуске программы я получаю следующую ошибку. Я попробовал новый ключ JSON, но не смог исправить ошибку.
Traceback (most recent call last):
File "Drive_Download.py", line 9, in
credentials = service_account.Credentials.from_service_account_info(credz)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/google/oauth2/service_account.py", line 243, in from_service_account_info
signer = _service_account_info.from_dict(
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/google/auth/_service_account_info.py", line 47, in from_dict
missing = keys_needed.difference(data.keys())
AttributeError: 'set' object has no attribute 'keys'
Подробнее здесь: https://stackoverflow.com/questions/793 ... ce-account
Загрузите файлы с Google Диска, используя Python и сервисную учетную запись. ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Загрузите файлы с Google Диска, используя Python и сервисную учетную запись.
Anonymous » » в форуме Python - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-