【发布时间】:2018-12-20 19:10:30
【问题描述】:
我编写了以下代码,它返回给我的快照列表,其中有特定的字符串,但这不返回大小为 0 的快照,
https://cloud.google.com/compute/docs/reference/rest/v1/snapshots/list
this API have following attributes:
- project_id
- 过滤器
我正在尝试放置一些基于正则表达式的过滤器 匹配名称中包含“intance-snap”的所有快照。
def snapshotlist():
query = "name eq <string>.*"
snaplist = compute.snapshots().list(project=project,filter=query).execute()
snaplist = ast.literal_eval(json.dumps(snaplist))
for snap in snaplist['items']:
print(snap['name'])
上面的代码不返回大小为 0 的快照,有没有办法获取所有快照,不管 SIZE 吗?
【问题讨论】:
-
从可选参数的过滤器属性的文档中,比较运算符必须是
=、!=、>或<。 所以没有,您无法执行类似于使用 Drive API 所做的查询,例如q: "name contains 'some string'"收集您的快照列表,然后使用您的语言的字符串和正则表达式方法过滤输出。 -
您能否发表评论作为对问题的回答,以造福社区?
-
@tehhowch 你能再看看吗,我已经为此编写了代码,但它没有得到完整的结果。
-
query = "name eq cp.*" ,当我使用它时,我得到了响应的快照列表: cptest15305994871 cptest15305994872 cptest15305994873 cptest15305994873 cptest15305994875 cptest15305994876 cptest1530599481 cptest153059948159481
-
那么问题是什么?你有结果,所以你的问题就解决了。
标签: python google-cloud-platform google-api-client snapshot