从 Google 云端硬盘下载图像

2023-12-14

我正在尝试使用 python api 从 Google Drive 下载一些图像文件。 我使用的代码首先获取文件资源对象,找到 downloadUrl 并使用它来下载文件。问题是gif和png文件似乎没有下载网址。

service = self.user.profile.DriveService()
conditions = []
conditions.append("title='image.png')
conditions.append("trashed = false")
response = service.files().list(q=" and ".join(conditions)).execute()
f = response['items'][0]
url = f['downloadUrl']
# Now download the file from url
...

这对于下载文本和 html 文件效果很好。 当我尝试下载图像文件时,它们具有 downloadUrl 属性。 这是一个示例图像文件资源

u'alternateLink':  u'https://docs.google.com/document/d/1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk/edit',
u'appDataContents': False,
u'createdDate': u'2013-01-20T08:39:55.314Z',
u'editable': True,
u'embedLink': u'https://docs.google.com/document/d/1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk/preview',
u'etag': u'"Q0cVodxX8sh4vfxZTlOyWcmmc0k/MTM1ODY3MTE5NzY5Nw"',
u'exportLinks': {u'application/pdf': u'https://docs.google.com/feeds/download/documents/export/Export?   id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=pdf',
                 u'application/rtf':     u'https://docs.google.com/feeds/download/documents/export/Export?id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=rtf',
              u'application/vnd.oasis.opendocument.text': u'https://docs.google.com/feeds/download/documents/export/Export?id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=odt',
              u'application/vnd.openxmlformats-officedocument.wordprocessingml.document': u'https://docs.google.com/feeds/download/documents/export/Export?id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=docx',
              u'text/html': u'https://docs.google.com/feeds/download/documents/export/Export?id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=html',
              u'text/plain': u'https://docs.google.com/feeds/download/documents/export/Export?id=1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk&exportFormat=txt'},
u'iconLink': u'https://ssl.gstatic.com/docs/doclist/images/icon_11_document_list.png',
u'id': u'1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk',
u'kind': u'drive#file',
u'labels': {...},
u'lastModifyingUserName': u'Max Ferguson',
u'lastViewedByMeDate': u'2013-01-20T08:39:57.697Z',
u'mimeType': u'application/vnd.google-apps.document',
u'modifiedByMeDate': u'2013-01-20T08:39:57.697Z',
u'modifiedDate': u'2013-01-20T08:39:57.697Z',
u'ownerNames': [u'Max Ferguson'],
u'parents': [{u'id': u'0BxiZtRrps_bKaXM1OXJtUXBkOTg',
           u'isRoot': False,
           u'kind': u'drive#parentReference',
           u'parentLink': u'https://www.googleapis.com/drive/v2/files/0BxiZtRrps_bKaXM1OXJtUXBkOTg',
           u'selfLink': u'https://www.googleapis.com/drive/v2/files/1S9amlqcwLl9FOYmHFhv_RK_NwPI47IWj8iGcIK9p8hk/parents/0BxiZtRrps_bKaXM1OXJtUXBkOTg'}],

我不明白为什么没有 downloadUrl。这可能是因为 mimetype 是 application/vnd.google-apps.document 但该文件绝对是图像。缩略图链接等指向图像。任何帮助,将不胜感激。


Google 原生格式 (application/vnd.google-apps.XXX) 的文档没有downloadUrl属性,您可以使用exportLinks集合以支持的格式之一下载它们:

https://developers.google.com/drive/manage-downloads#downloading_google_documents

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Google 云端硬盘下载图像 的相关文章

随机推荐

  • 如何将多个参数绑定到 MySQLi 准备好的语句

    我有可变数量的参数要插入 但出现错误 2031 No data supplied for parameters in prepared statement警告后Number of variables doesn t match number
  • 导入mysql数据中断,如何恢复?

    我使用导入了一个大型mysql数据库 mysql uroot ppassword dbName 数据库在处理过程中消失了 可能是由于几天后超时 有办法恢复吗 或者我运气不好 需要删除现有的数据库并重新导入 在命令行上使用 ignore 选项
  • 每行阅读 PDF

    如何阅读 PDF 文件line by line使用 iText5 for NET 我在互联网上搜索过 但我只找到了每页内容阅读 PDF 文件 请看下面的代码 public string ReadPdfFile object Filename
  • 如何使用 grid.arrange 排列任意数量的 ggplot?

    这是交叉发布在 ggplot2 谷歌组上的 我的情况是处理一个函数输出任意数量的图 取决于用户提供的输入数据 该函数返回 n 个图的列表 我想将这些图以 2 x 2 的形式排列 我正在努力解决以下同时存在的问题 我怎样才能灵活地获得任意 n
  • 如何使用git命名空间隐藏分支

    背景 我正在与一个大型团队合作 使用git用于版本控制 正常流程是 人们从 积压队列 中选择一张票 通过当地分支机构 即git checkout b my feature branch 进行多次提交 即git commit 将本地更改推送到
  • Firebase 令牌验证

    我有一个 PHP 后端和一个 Android 客户端 使用客户端 用户可以使用 Google 或 Facebook 均通过 Firebase 登录我的应用程序 我从以下位置获取令牌FirebaseUser并将其发送到我的服务器 很简单 第一
  • MongoDB 订单/销售聚合组每月总和 + 计数字段

    谁知道更好的解决方案来按日期和总计对订单进行分组并按来源进行计数 当然 我可以按来源分组 然后我仅获得该来源的总计 之后我可以更改结果以获得所需的结果 但我想知道是否可以通过一种简单的方式 group陈述 Eg ordersByApp 1
  • OpenCV-(-215:断言失败) _src.total() > 0 函数 'cv::warpPerspective'

    我的完整代码 import cv2 as cv import numpy as np cap cv VideoCapture 0 cv CAP DSHOW imgTarget cv imread photos TargetImage jpg
  • python 中 Appengine 的通配符搜索

    我刚刚开始在 Google App Engine 上使用 Python 构建联系人数据库 实现通配符搜索的最佳方法是什么 例如 我可以执行 query name newman 吗 不幸的是 Google 应用引擎无法进行部分文本匹配 来自文
  • 使用 Java 和 Samba JCIFS 访问文件

    我有一个关于使用 Samba JCIFS 访问文件的问题 所以我想访问一个服务器 我们将其称为server unv edu 工作组是WKGRP 此服务器中有一个共享 server unv edu pcb 我尝试访问服务器的方式是 publi
  • 防止变量名被 read.csv/read.table 破坏?

    我的数据集testdata有 2 个名为PWGTP and AGEP 数据位于 csv file 当我做 gt head testdata 变量显示为 PWGTP AGEP 23 55 26 56 24 45 22 51 25 54 23
  • 通过文件输入选择多个文件时删除单个文件

    当允许用户选择多个文件时 是否可以从要上传的文件列表中删除单个文件 例如 我有一个看起来有点像这样的输入
  • Android:使用 xslt 转换 xml

    我想使用 xsl 文件转换一些 xml 并以某种方式输出结果 我使用的是 Android Api Level 8 我当前的活动如下所示 但变压器保持为空 LogCat 抛出一个System err with org apache harmo
  • 如何消除const_iterator的常量性?

    作为这个问题的延伸Are const iterators faster 我还有一个问题const iterators 如何消除 a 的常量性const iterator 虽然迭代器是指针的广义形式 但仍然const iterator and
  • 获取 Dart 中的当前日期

    如何在 Dart 中获取独立于系统日期和时间的当前日期 我努力了DateTime now但它给出的是系统日期而不是实际日期 以防系统日期被更改 如果您不相信系统会给出正确的时间 则需要向其他地方询问以获取时间 这可以通过多种方式完成 具体取
  • ABP 中实体的 DTO 映射异常

    当我尝试插入实体时 出现有关 映射 的错误 插入物是由CreateCrudAppService 的方法 我的实体继承自FullAuditedEntity但相关的 DTO 仅指定了几个属性 我该如何处理这种情况 Unmapped member
  • 删除所有的 .字符串中除最后一个之外的(点)

    我需要删除字符串中除最后一个点之外的所有点 例如 如果字符串是 1 2 3 4 5 则结果需要是 1234 5 这是在 powershell 中 我做不到 先感谢您 正则表达式替换 所有点后面没有点 1 2 3 4 replace
  • 在 C++、OpenGL 中使用 De Casteljau 算法绘制贝塞尔曲线

    我正在尝试找到使用 decasteljau 算法生成贝塞尔曲线的方法 以完成我的一项作业 我能够使用正常方法生成贝塞尔曲线 但无法开始使用上述算法生成 如果有人可以建议我正确的方向或分享您拥有的任何代码 这将会有很大的帮助 我不只是按原样询
  • 萤火虫错误:找不到元素

    1客户端 通过 AJAX fn 向服务器发送请求 2服务器 响应形式为text xml并且只能正常运行 1 到 2 次 response setContentType text xml 3但仅在 1 2 请求之后 我在浏览器中收到错误 fi
  • 从 Google 云端硬盘下载图像

    我正在尝试使用 python api 从 Google Drive 下载一些图像文件 我使用的代码首先获取文件资源对象 找到 downloadUrl 并使用它来下载文件 问题是gif和png文件似乎没有下载网址 service self u