2016-07-23 2 views
0

Используя клиент api python, я могу экспортировать документы Google с помощью export или export_media и не-google doc-материала с get_media.Googe drive api - нет поддержки для экспорта карты (python)

Карты, сохраненные в учетной записи пользователя, не подлежат экспорту. export возвращает ошибку

HttpError: <HttpError 403 ... returned "Export only supports Google Docs.">

Я признаю, что это не имеет смысла использовать get_media, но я стараюсь в любом случае с учетом приведенных выше ошибок. Она возвращает:

HttpError: <HttpError 403 ... returned "Only files with binary content can be downloaded. Use Export with Google Docs files.">

кажется get_media и export расходятся во мнениях относительно того, что этот объект.

Я полагаю, что export должен работать с mimeType='application/vnd.google-earth.kmz'

+0

Вы пытались использовать 'webContentLink' для получения файла (выглядит так: https://docs.google.com/a/google.com/uc?id=FILE_ID&export=download)? –

+0

Спасибо @ Mr.Rebot. Кажется, что wbContentLink доступен только для [двоичного содержимого] (https://developers.google.com/drive/v3/reference/files#resource). Я думаю, что метод get_media является оберткой для этого. – hippo30

ответ

1

Вы можете использовать Drive.About.get для определения форматов экспорта, доступные для каждого типа Google MIME:

GET https://www.googleapis.com/drive/v3/about?fields=exportFormats&key={YOUR_API_KEY} 

{ 
"exportFormats": { 
    "application/vnd.google-apps.form": [ 
    "application/zip" 
    ], 
    "application/vnd.google-apps.document": [ 
    "application/rtf", 
    "application/vnd.oasis.opendocument.text", 
    "text/html", 
    "application/pdf", 
    "application/zip", 
    "application/vnd.openxmlformats-officedocument.wordprocessingml.document", 
    "text/plain" 
    ], 
    "application/vnd.google-apps.drawing": [ 
    "image/svg+xml", 
    "image/png", 
    "application/pdf", 
    "image/jpeg" 
    ], 
    "application/vnd.google-apps.spreadsheet": [ 
    "text/csv", 
    "application/x-vnd.oasis.opendocument.spreadsheet", 
    "application/zip", 
    "application/pdf", 
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" 
    ], 
    "application/vnd.google-apps.script": [ 
    "application/vnd.google-apps.script+json" 
    ], 
    "application/vnd.google-apps.presentation": [ 
    "application/vnd.openxmlformats-officedocument.presentationml.presentation", 
    "application/pdf", 
    "text/plain" 
    ] 
} 
} 

Как вы можете видеть, в настоящее время нет форматов экспорта для application/vnd.google-apps.map. Учитывая, что Google Мои карты поддерживают экспорт в KMZ/KML, я думаю, что в идеале API Диска Google также будет. Вы можете подать запрос функции на issue tracker.

+0

Спасибо Эрик. [Выпуск 4693] (https://code.google.com/a/google.com/p/apps-api-issues/issues/detail?id=4693) – hippo30

Смежные вопросы