#python #python-3.x #google-api #google-drive-api #google-api-python-client
#python #python-3.x #google-api #google-drive-api #google-api-python-client
Вопрос:
Я хочу прочитать файл непосредственно с Google Диска, используя API Google Drive в Visual Studio Code с использованием Python.
Вот часть кодов:
file2 = drive.CreateFile({'id': file1['<the file ID of my file that is inside the Google Drive>']})
file2.GetContentString('testing.csv')
После запуска этого я получаю
KeyError: KeyError('<the file ID of my file that is inside the Google Drive>')
Я искал в Интернете возможные способы решения этой проблемы, но, похоже, пока ничего не работает…
Я следовал этому руководству: практическое руководство по управлению файлами Google Диска с помощью Python
Комментарии:
1.
file2 = drive.CreateFile({'id': file1['id']})
file2.GetContentFile('testing.csv')
2. @ChatterOne я все еще получаю ту же ошибку…
3. @user14489561 в вашем заявлении говорится, что вы хотите прочитать файл с Google Диска. В вашем коде говорится, что вы пытаетесь неправильно создать файл на Google Диске. Что именно вы пытаетесь сделать?
4. @DalmTo, как и в, считывает данные файла csv (который хранится внутри Google Диска) и отображает данные файла csv в терминале вывода моего кода Visual Studio
Ответ №1:
{'id': file1['id']}
подразумевает, что вы хотите получить файл id
of file1
— a, который, как ожидается, был загружен на предыдущих шагах
Если вы не определили file1
в своем коде, вы можете жестко указать действительный идентификатор любого файла на вашем диске в качестве параметра.
Пример:
file2 = drive.CreateFile({'id': '<the file ID of a csv file on your Google Drive>'})
file2.GetContentString('testing.csv')
Ответ №2:
загрузка файла на Google Диск
Вам необходимо отправить файл MediaFileUpload
для загрузки
file_metadata = {'name': 'photo.jpg'}
media = MediaFileUpload('files/photo.jpg', mimetype='image/jpeg')
file = drive_service.files().create(body=file_metadata,
media_body=media,
fields='id').execute()
print 'File ID: %s' % file.get('id')
просмотр загруженного файла в веб-приложении Google Drive.
использование file file.get вы получите ответ на запрос файла. Если загруженный вами файл относится к типу, который может быть открыт и отображен на Google Диске, у него будет вызываемое свойство.
Строка webViewLink — ссылка для открытия файла в соответствующем редакторе Google или программе просмотра в браузере.
Вы можете использовать эту ссылку, чтобы открыть файл в веб-приложении Google Drive. Однако обратите внимание, что пользователь, открывающий файл, должен иметь права доступа к этому файлу, чтобы иметь возможность его просматривать.
чтение данных запрограммировано.
Помните, что Google Drive api — это просто API для хранения файлов, он не имеет возможности открывать файлы, он просто сохраняет их. Если вы работаете с CSV, вам следует рассмотреть возможность преобразования его в таблицу Google, а затем использовать API Google Sheets для программного доступа к данным
Комментарии:
1. @DalmTo файл csv уже загружен на Google Диск, хотя … мне просто нужно прочитать данные этого файла csv и отобразить его на моем диске Google
2. Выполните file.get, а затем проверьте наличие webviewlink. Это будет работать, только если это тип файла, который может открыть Google Диск.