Я хочу автоматически конвертировать xlsx файлы в электронные таблицы Google, когда я загружаю их с помощью своего кода на Google Диск. Однако, хотя конверсия успешно работает для файлов csv, я получаю:Как преобразовать XLSX в таблицы в API Google Диска v3
<HttpError 400 when requesting https://www.googleapis.com/upload/drive/v3/files?uploadType=resumable&alt=json returned "Bad Request">
при попытке загрузить xlsx.
Вот мой код:
def upload_service(filepath, name="", description="", fileID="", parentID=""):
""" Uses a Resource (service) object to upload a file to drive. """
if service == "": authenticate_service()
if name == "":
name = str(os.path.basename(filepath).split(os.extsep)[0]) # Get from filepath
extension = str(os.path.basename(filepath).split(os.extsep)[1]).lower()
if extension == "csv": # CSV
mime_type = "text/csv"
elif extension in ["xls", "xlsx"]: # EXCEL
mime_type = "application/ms-excel"
else:
return
media_body = MediaFileUpload(filepath, mimetype=mime_type, resumable=True)
if parentID == "":
meta = dict(name=name, mimeType="application/vnd.google-apps.spreadsheet", description=description)
else:
meta = dict(name=name, mimeType="application/vnd.google-apps.spreadsheet", description=description, parents=[parentID])
if fileID == "": # CREATE
upload = service.files().create(
body=meta,
media_body=media_body).execute()
else: # REPLACE
upload = service.files().update(
body=meta,
media_body=media_body,
fileId=fileID).execute()
print ("\nFINISHED UPLOADING")
Как я могу сделать это в v3? Очень ясно, как это сделать в версии v2, но не в обновленном API.
Это сработало для меня! – Elliptica