作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 v3 API 将文件 (pdf) 上传到 Google Drive,我想从电子邮件的附件中创建文件。我发现的所有文档似乎都依赖于我想上传 blob 的本地文件。
到目前为止,这是我的代码的本质:
class MailHandler(InboundMailHandler):
def receive(self, mail_message):
logging.info("Received a message from: " + mail_message.sender)
if hasattr(mail_message, 'attachments'):
logging.info("Has attachments")
for filename, filecontents in mail_message.attachments:
file_blob = filecontents.payload.decode(filecontents.encoding)
credentials = UserModel.query().get()
media = MediaFileUpload(filename, mimetype = 'image/jpg')
file = drive.files().create( body = {'name': 'testupload.jpg'}, media_body = media)
file.execute(c.credentials.authorize(http))
这会引发错误,因为文件不存在,它不存在是因为它是一个 blob。
有人可以帮帮我吗?
最佳答案
最后,关键是使用 apiclient.http
模块中的 MediaInMemoryUpload
,这是我通过检查 http
发现的。
以下是如何使用它的粗略概述:
from apiclient.http import MediaInMemoryUpload
media = MediaInMemoryUpload(file_blob, mime_type, resumable=True)
file = drive.files().create(body={'name': filename},media_body=media)
file.execute()
关于python - Google Drive API - 使用 blob 从 MediaFileUpload 上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48831189/
有谁知道我在哪里可以找到上传本地文件并使用 MediaFileUpload 获取内容的完整示例代码? 我确实需要查看用于发布的 HTML 表单和接受它的代码。我正在拔头发,到目前为止只得到部分答案。
我尝试将此提交给 Google 支持,但他们将我转介到堆栈溢出,但在使用 python 库 googleapiclient 为 Google Drive API 运行插入函数时出现问题。 Python
我正在尝试通过 v3 API 将文件 (pdf) 上传到 Google Drive,我想从电子邮件的附件中创建文件。我发现的所有文档似乎都依赖于我想上传 blob 的本地文件。 到目前为止,这是我的代
我是一名优秀的程序员,十分优秀!