Google 驱动 API 获取缩略图
Google drive API get thumbnail
我想获取 google 驱动器为存储的 pdf 文件创建的缩略图。使用此功能,我列出了所有文件:
listFiles: function (folderId, onData, onError) {
drive.files.list({
auth: jwtClient,
q: "'" + folderId + "' in parents"
}, function (err, res) {
console.log(res.files)
}
});
每个文件的控制台日志输出如下所示:
{
kind: 'drive#file',
id: '0BapkdhpPsqtgf01YbEJRRlhuaVUf',
name: 'file-name.pdf',
mimeType: 'application/pdf'
}
当我查看 google 的文档时,它说文件的元数据应包含所有这些属性:https://developers.google.com/drive/v3/reference/files
在那里我发现:contentHints.thumbnail.image
如何访问它?
好的,问题是获取文件的 元数据 我需要使用 files.get
函数,而不是 files.list
。另一件事是,在调用中,需要设置字段参数。例如:
drive.files.get({
auth: jwtClient,
fileId: fileId,
fields : "thumbnailLink"
})
您可以通过以下 api 调用获取基本元数据。
python 的解决方法:
self.__results = drive_service.files().list(pageSize=10, supportsAllDrives = True, fields = "files(kind, id, name, mimeType, webViewLink, hasThumbnail, thumbnailLink, createdTime, modifiedTime, owners, permissions, iconLink, imageMediaMetadata)").execute()
或
self.__results = drive_service.files().list(pageSize=10, supportsAllDrives = True, fields = "*").execute()
获取完整的元数据。
参考:https://developers.google.com/drive/api/v3/reference/files#resource
您可以使用 fields 参数更改返回的元数据字段:
drive.files.list({
auth: jwtClient,
q: "'" + folderId + "' in parents",
fields: "files(id, name, mimeType, thumbnailLink)"
}, function (err, res) {
console.log(res.files)
});
我想获取 google 驱动器为存储的 pdf 文件创建的缩略图。使用此功能,我列出了所有文件:
listFiles: function (folderId, onData, onError) {
drive.files.list({
auth: jwtClient,
q: "'" + folderId + "' in parents"
}, function (err, res) {
console.log(res.files)
}
});
每个文件的控制台日志输出如下所示:
{
kind: 'drive#file',
id: '0BapkdhpPsqtgf01YbEJRRlhuaVUf',
name: 'file-name.pdf',
mimeType: 'application/pdf'
}
当我查看 google 的文档时,它说文件的元数据应包含所有这些属性:https://developers.google.com/drive/v3/reference/files
在那里我发现:contentHints.thumbnail.image
如何访问它?
好的,问题是获取文件的 元数据 我需要使用 files.get
函数,而不是 files.list
。另一件事是,在调用中,需要设置字段参数。例如:
drive.files.get({
auth: jwtClient,
fileId: fileId,
fields : "thumbnailLink"
})
您可以通过以下 api 调用获取基本元数据。 python 的解决方法:
self.__results = drive_service.files().list(pageSize=10, supportsAllDrives = True, fields = "files(kind, id, name, mimeType, webViewLink, hasThumbnail, thumbnailLink, createdTime, modifiedTime, owners, permissions, iconLink, imageMediaMetadata)").execute()
或
self.__results = drive_service.files().list(pageSize=10, supportsAllDrives = True, fields = "*").execute()
获取完整的元数据。
参考:https://developers.google.com/drive/api/v3/reference/files#resource
您可以使用 fields 参数更改返回的元数据字段:
drive.files.list({
auth: jwtClient,
q: "'" + folderId + "' in parents",
fields: "files(id, name, mimeType, thumbnailLink)"
}, function (err, res) {
console.log(res.files)
});