Google Drive API可创建和下载PDF

时间:2016-05-29 13:45:55

标签: google-drive-api pdf-generation

是否可以调用Google云端硬盘API,根据模板创建文档,该模板包含从不是Google Apps Scripts应用的应用发送的动态数据,并以PDF格式下载文档。

3 个答案:

答案 0 :(得分:1)

根据Google云端硬盘documentation,您可以使用云端硬盘API下载存储在Google云端硬盘中的文件。此外,您还可以下载应用程序可以处理的格式的Google文档(文档,电子表格,演示文稿等)的导出版本。 Drive还支持通过webViewLink属性中的URL为用户提供对文件的直接访问。

以下示例代码演示了如何使用客户端库下载PDF格式的Google文档:

String fileId = "1ZdR3L3qP4Bkq8noWLJHSr_iBau0DNT4Kli4SxNc2YEo";
OutputStream outputStream = new ByteArrayOutputStream();
driveService.files().export(fileId, "application/pdf")
.executeMediaAndDownloadTo(outputStream);

另请查看此page以获取更多信息。

答案 1 :(得分:0)

我想知道,如果使用该API,您还可以定义要检索的工作簿以及导出应该是纵向还是横向。

我发现,你可以为请求设置密钥(字符串)/值(对象)设置,但它实际上不起作用。

任何人都知道如何通过API微调导出。如果我已经登录,我可以通过简单的HTTP来实现(如下所示),但是如何使用API​​进行操作?

https://docs.google.com/feeds/download/spreadsheets/Export?key=<spreadheetIDHere>&exportFormat=pdf&gid=<workbookIdHere>

最好的, 周五

答案 2 :(得分:0)

文档在doing this via an HTTP request上有说明。但是,它并没有通过Drive V3 Python API进行此操作。

我在由Google开发者YouTube官方频道发布的视频Google Drive API: Uploading & Downloading Files中找到了解决方案。

此示例假定您已创建文件并且已进行授权设置。

# setup authorization
DRIVE = discovery.build('drive', 'v3', credentials=creds)

file_id = 'your-file-id'

data = DRIVE.files().export(fileId=file_id, mimeType="application/pdf").execute()
if data:
    filename = 'your-file-name.pdf'
    with open(filename, 'wb') as pdf_file:
        pdf_file.write(data)

文件将下载到当前工作目录中。

相关问题