从 Google 云存储中删除文件

2024-04-18

因此,我在 appengine 上启动并运行了一个 django 应用程序,并在用户上传文件时让它创建文件。我遇到的问题是试图弄清楚如何删除它们。我创建它们的代码看起来像。

from google.appengine.api import files

file = request.FILES['assets_thumbnail']
filename = '/gs/mybucketname/example.jpg'
writable_file_name = files.gs.create(filename, mime_type='image/jpeg', acl='public-read')
with files.open(writable_file_name, 'a') as f:
    f.write(file.read())
files.finalize(writable_file_name)

这工作正常,但在文档中:

https://developers.google.com/appengine/docs/python/googlestorage/functions https://developers.google.com/appengine/docs/python/googlestorage/functions

没有列出删除方法。但是,如果您通过下面的链接查看 google.appengine.api.files 的实际来源(第 504 行)

http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/api/files/file.py http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/api/files/file.py

有一个我可以调用的删除方法,但我无法准确地弄清楚它想要的参数。我已经尝试了很多不同的存储桶名称组合。它似乎希望它以 /blobstore/ 开头,这与我迄今为止在与 Cloud Storage 交互时所做的任何事情都不同。我一直在查看 google.appengine.api.files 编写的底层 blobstore 类,但仍然无法确切地弄清楚如何删除项目。看起来我可能需要找到我上传的项目的 BlobKey。我可以使用谷歌托管的基于网络的存储桶管理器以及它们提供的 gsutil 命令行实用程序来删除它们。

有没有人通过部署到应用程序引擎的Python应用程序成功从谷歌云存储中删除文件?非常感谢任何线索/想法/想法。


我来到这里寻找一种清空谷歌存储目录的方法与蟒蛇。是一个解决方法app-engine实现(更适用于这个问题),但在 python 脚本中可能有用。

from google.cloud import storage
bucket_name = 'my-bucket'
directory_name = 'this/is/my/path/'

client = storage.Client()
bucket = client.get_bucket(bucket_name)
# list all objects in the directory
blobs = bucket.list_blobs(prefix=directory_name)
for blob in blobs:
    blob.delete()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Google 云存储中删除文件 的相关文章

  • 动态添加jinja模板

    我有一个 jinja 模板 它是一组 div 标签内的唯一内容 div include temppage html div 当我按下按钮时 我想用其他内容替换标签之间的所有内容 我希望用另一个 jinja 模板 include realpa
  • Django 和自定义表单验证

    我正在尝试创建一个自定义表单字段并对其进行验证 这是 Django 1 0 版本 这是我的表单对象 class UsernameField forms CharField def clean self values print 我是这样称呼
  • Twython - 如何使用媒体 url 更新状态

    在我的应用程序中 我允许用户在 Twitter 上发帖 现在我想让他们通过媒体更新他们的状态 In twython py我看到一个方法update status with media从文件系统读取图像并上传到 Twitter 我的图像不在文
  • AES 会话密钥的 RSA 解密失败,并显示“AttributeError:‘bytes’对象没有属性‘n’”

    我正在努力在 Python 3 6 上从 PyCryptodome 实现公钥加密 当我尝试创建对称加密密钥并加密 解密变量时 一切正常 但是当我引入 RSA 和 PKCS1 OAEP 的那一刻 一切就都顺理成章了 session key加密
  • 使用 PRAW 帮助获取 Reddit 帖子链接到的 URL

    我正在尝试使用 Praw 获取 Reddit 提交标题中链接的帖子 例如提交 http www reddit com r AdviceAnimals comments 1adu71 apparently people still need
  • Django 模型 - 外键作为主键

    我有以下2张表 在 models py 中 class Foo models Model uuid models CharField UUID primary key True default uuid4 and class FooExt
  • 使用 Python 读取 App Engine 上的文件?

    是否可以在 GAE 上打开文件来读取其内容并获取最后修改的标签 我收到 IOError Errno 13 文件无法访问 我知道我无法删除或更新 但我相信阅读应该是可能的 有人遇到过类似的问题吗 os stat f r st mtim 您可能
  • Python Raspberry pi - 如果路径不存在,则跳过循环

    我有一个收集温度 文本文件中的值 的功能 它使用部分预定义的路径 但是 有时如果温度传感器未加载 断开连接 则路径不存在 如果路径不可用 如何设置条件或例外来跳过循环 我想使用 continue 但我不知道要设置什么条件 def read
  • python 中的子进程调用以使用 JAVA_OPTS 调用 java jar 文件

    示例代码 import subprocess subprocess call java jar temp jar 如何在上面的命令中指定JAVA OPTS 当我使用上述命令时 我收到 java lang OutOfMemoryError 无
  • Flask-Mail - 基于 Flask-Cookiecutter 异步发送电子邮件

    我的烧瓶项目基于烧瓶饼干切割机 https github com sloria cookiecutter flask我需要异步发送电子邮件 发送电子邮件的功能由以下配置米格尔的教程 https blog miguelgrinberg com
  • 如何在海龟图形中将多个按键绑定在一起?

    我正在尝试制作一个连接点的 python 游戏 我希望游戏记录 2 次按钮按下操作 示例 如果用户按向上和向右箭头键 乌龟将向东北方向移动 45 度 这是我的代码 import turtle flynn turtle Turtle win
  • 用于 OAuth 身份验证的 WSGI 中间件

    我使用构建了一个非常小的网络应用程序Flask http flask pocoo org 现在我想向网站添加非常基本的身份验证 我不需要授权 由于 Flask 不支持开箱即用的 auth auth 我想插入 WSGI 中间件来完成这项工作
  • 仅获取图像中的外部轮廓

    我有这段代码 可以在图像中绘制轮廓 但我只需要外部轮廓 import cv2 import numpy as np camino C Users Usuario Documents Deteccion de Objetos 123 jpg
  • 按最小值分组并用另一列中的值填充 NA

    我有一个如下所示的示例数据框 df pd DataFrame data uid 1 1 1 2 2 3 pagename home blah blah home blah blah startpage NA NA NA home home
  • 如何配置应用程序中的所有记录器

    Python 的日志记录模块允许模块或类定义自己的记录器 不同的记录器可以有不同的处理程序 其中一些可能选择记录到文件 而另一些则选择记录到标准输出 现在 我的应用程序使用其中几个模块 每个模块都有自己的记录器 这些记录器具有各种处理程序
  • 加载 IPython 笔记本时出错

    一旦我用 Jupyter 打开笔记本文件 它要求我转换文件 我就再也无法在标准 IPython 笔记本中打开它了 我收到以下错误 Error loading notebook Bad Request 2014 12 21 04 13 03
  • Python Pandas DateOffset 使用另一列中的值

    我以为这会很容易 但下面的内容并不适合我想要的 只是尝试通过使用另一列中的值将天数添加到预先存在的日期时间列来计算新的日期列 我下面的 偏移 列只有 1 位数字 df new date df orig date apply lambda x
  • 使用 MinGW 链接到 Python

    我不想创建一个嵌入Python解释器的跨平台程序 并用MinGW编译它 但是 Python 二进制发行版没有提供 MinGW 链接的库 仅python32 lib对于 Visual C 并且 Python 源包不提供使用 MinGW 编译的
  • Python:Scrapy返回元素后面的所有html,而不仅仅是元素的html

    我遇到了 Scrapy 行为异常的问题 几个月前我编写了一个简单的函数 它返回给定 xpath 处的项目列表 def get html response path sel Selector text response page source
  • 使 flake8 区分未定义函数和星型导入

    我有一个相当大的项目 我试图在发布之前清理它 但是当我运行 flake8 时 我得到了大量的 F405

随机推荐