本文介绍图像搜索服务Python SDK的使用方法及示例。
说明
如需了解更多产品详情和获取技术支持,请单击在线咨询或通过钉钉群(35035130)联系我们。
接口列表
接口名称 | 接口说明 |
Add | 增加图片。 |
SearchImageByPic | 使用图片进行搜索。 |
SearchImageByName | 指定名称,使用已入库的图片进行搜索。 |
Delete | 删除图片。 |
UpdateImage | 修改图片。 |
Detail | 查询实例信息。 |
DumpMeta | 元信息导出任务。 |
DumpMetaList | 元信息导出任务列表。 |
BatchTask | 批量任务。 |
BatchTaskList | 批量任务列表。 |
准备工作
在安装和使用阿里云SDK前,确保您已经注册阿里云账号并生成访问密钥(AccessKey)。详情请参见创建AccessKey。
使用如下方式安装依赖包。
pip install alibabacloud_imagesearch20201214
Add接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import AddImageAdvanceRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def addImage(): request = AddImageAdvanceRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = '<instanceName>' # 必填,商品id,最多支持 512个字符。 # 一个商品可有多张图片。 request.product_id = '<productId>' # 必填,图片名称,最多支持 512个字符。 # 1. ProductId + PicName唯一确定一张图片。 # 2. 如果多次添加图片具有相同的ProductId + PicName,以最后一次添加为准,前面添加的图片将被覆盖。 request.pic_name = '<picName>' # 图片内容,最多支持 4MB大小图片以及5s的传输等待时间。当前仅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式图片; # 对于商品、商标、通用图片搜索,图片长和宽的像素必须都大于等于100且小于等于4096; # 对于布料搜索,图片长和宽的像素必须都大于等于448且小于等于4096; # 图像中不能带有旋转信息; # 使用URL方式释放下方注释即可。 # url = '<fileUrl>' # f = BytesIO(requests.get(url).content) # 使用图片file新增 f = open('<filePath>', 'rb') request.pic_content_object = f # 选填,商品类目。 # 1. 对于商品搜索:若设置类目,则以设置的为准;若不设置类目,将由系统进行类目预测,预测的类目结果可在Response中获取 。 # 2. 对于布料、商标、通用搜索:不论是否设置类目,系统会将类目设置为88888888。 request.category_id = 3 # 选填,用户自定义的内容,最多支持4096个字符。 # 查询时会返回该字段。例如可添加图片的描述等文本。 request.custom_content = "this is a simple test" # 选填,整数类型属性,可用于查询时过滤,查询时会返回该字段。 # 例如不同的站点的图片/不同用户的图片,可以设置不同的IntAttr,查询时通过过滤来达到隔离的目的 request.int_attr = 56 # 选填,字符串类型属性,最多支持 128个字符。可用于查询时过滤,查询时会返回该字段。 request.str_attr = "test" # 选填,是否需要进行主体识别,默认为true。 # 1.为true时,由系统进行主体识别,以识别的主体进行搜索,主体识别结果可在Response中获取。 # 2.为false时,则不进行主体识别,以整张图进行搜索。 # 3.对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.crop = True # 选填,图片的主体区域,格式为 x1,x2,y1,y2, 其中 x1,y1 是左上角的点,x2,y2是右下角的点。设置的region 区域不要超过图片的边界。 # 若用户设置了Region,则不论Crop参数为何值,都将以用户输入Region进行搜索。 # 对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.region = "167,467,221,407" config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.[regionId].aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.[regionId].aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) runtime_option = RuntimeOptions() response = client.add_image_advance(request, runtime_option) print(response.to_map()) f.close() if __name__ == '__main__': addImage()
结果示例
{ 'RequestId': '7F769FFC-4F45-476E-BE6C-E4EF82E012A7', 'Success': True, 'Message': 'success', 'Code': 0, 'PicInfo': { 'CategoryId': 20, 'Region': '474,747,497,784' } }
SearchImageByPic接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import SearchImageByPicAdvanceRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def searchImageByPic() : request = SearchImageByPicAdvanceRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = '<instanceName>' # 图片内容,最多支持 4MB大小图片以及5s的传输等待时间。当前仅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式图片; # 对于商品、商标、通用图片搜索,图片长和宽的像素必须都大于等于100且小于等于4096; # 对于布料搜索,图片长和宽的像素必须都大于等于448且小于等于4096; # 图像中不能带有旋转信息 # 使用URL方式释放下方注释即可。 # url = '<fileUrl>' # f = BytesIO(requests.get(url).content) # 使用图片file 查询相似图片 f = open('<filePath>', 'rb') request.pic_content_object = f # 选填,商品类目。 # 1. 对于商品搜索:若设置类目,则以设置的为准;若不设置类目,将由系统进行类目预测,预测的类目结果可在Response中获取 。 # 2. 对于布料、商标、通用搜索:不论是否设置类目,系统会将类目设置为88888888。 request.category_id = 3 # 选填,返回结果的数目。取值范围:1-100。默认值:10。 request.num = 10 # 选填,返回结果的起始位置。取值范围:0-499。默认值:0。 request.start = 0 # 选填,是否需要进行主体识别,默认为true。 # 1.为true时,由系统进行主体识别,以识别的主体进行搜索,主体识别结果可在Response中获取。 # 2.为false时,则不进行主体识别,以整张图进行搜索。 # 3.对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.crop = True # 选填,图片的主体区域,格式为 x1,x2,y1,y2, 其中 x1,y1 是左上角的点,x2,y2是右下角的点。设置的region 区域不要超过图片的边界。 # 若用户设置了Region,则不论Crop参数为何值,都将以用户输入Region进行搜索。 # 3.对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.region="167,467,221,407" # 选填,过滤条件 # int_attr支持的操作符有>、>=、<、<=、=,str_attr支持的操作符有=和!=,多个条件之支持AND和OR进行连接。 # 示例: # 1. 根据IntAttr过滤结果,int_attr>=100 # 2. 根据StrAttr过滤结果,str_attr!="value1" # 3. 根据IntAttr和StrAttr联合过滤结果,int_attr=1000 AND str_attr="value1" request.filter="int_attr=56 AND str_attr=\"test\"" config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) runtime_option = RuntimeOptions() response = client.search_image_by_pic_advance(request, runtime_option) print(response.to_map()) f.close() if __name__ == '__main__': searchImageByPic()
结果示例
{ 'RequestId': '53C481F3-E064-428D-AB25-B6C57A704E68', 'Success': True, 'Code': 0, 'Msg': 'success', 'Auctions': [{ 'CategoryId': 20, 'ProductId': 'test-version-001', 'PicName': 'test-version-001.jpg', 'CustomContent': None, 'Score': 1.0 'SortExprValues': '5.37633353624177e+24;0', 'IntAttr': None, 'StrAttr': None }, { 'CategoryId': 20, 'ProductId': 'test_0426_1', 'PicName': 'test_0426_1.png', 'CustomContent': None, 'Score': 1.0, 'SortExprValues': '2.71303606033325;263', 'IntAttr': None, 'StrAttr': None }], 'Head': { 'DocsReturn': 5, 'DocsFound': 5, 'SearchTime': 295 }, 'PicInfo': { 'CategoryId': 20, 'Region': '474,747,497,784', 'AllCategories': [{ 'Id': 0, 'Name': 'Tops' }, { 'Id': 1, 'Name': 'Dress' }, { 'Id': 2, 'Name': 'Bottoms' }, { 'Id': 3, 'Name': 'Bag' }, { 'Id': 4, 'Name': 'Shoes' }, { 'Id': 5, 'Name': 'Accessories' }, { 'Id': 6, 'Name': 'Snack' }, { 'Id': 7, 'Name': 'Makeup' }, { 'Id': 8, 'Name': 'Bottle' }, { 'Id': 9, 'Name': 'Furniture' }, { 'Id': 20, 'Name': 'Toy' }, { 'Id': 21, 'Name': 'Underwear' }, { 'Id': 22, 'Name': 'Digital device' }, { 'Id': 88888888, 'Name': 'Other' }], 'MultiRegion': [{ 'Region': '112,440,76,387' }] } }
SearchImageByName接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import SearchImageByNameRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def searchImageByName() : request = SearchImageByNameRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = '<instanceName>' # 必填,商品id,最多支持 512个字符。 # 一个商品可有多张图片。 request.product_id = '<productId>' # 必填,图片名称,最多支持 512个字符。 # 1. ProductId + PicName唯一确定一张图片。 # 2. 如果多次添加图片具有相同的ProductId + PicName,以最后一次添加为准,前面添加的图片将被覆盖。 request.pic_name = '<picName>' # 选填,商品类目。 # 1. 对于商品搜索:若设置类目,则以设置的为准;若不设置类目,将由系统进行类目预测,预测的类目结果可在Response中获取 。 # 2. 对于布料、商标、通用搜索:不论是否设置类目,系统会将类目设置为88888888。 request.category_id = 3 # 选填,返回结果的数目。取值范围:1-100。默认值:10。 request.num = 10 # 选填,返回结果的起始位置。取值范围:0-499。默认值:0。 request.start = 0 # 选填,是否需要进行主体识别,默认为true。 # 1.为true时,由系统进行主体识别,以识别的主体进行搜索,主体识别结果可在Response中获取。 # 2.为false时,则不进行主体识别,以整张图进行搜索。 # 3.对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.crop = True # 选填,图片的主体区域,格式为 x1,x2,y1,y2, 其中 x1,y1 是左上角的点,x2,y2是右下角的点。设置的region 区域不要超过图片的边界。 # 若用户设置了Region,则不论Crop参数为何值,都将以用户输入Region进行搜索。 # 3.对于布料图片搜索,此参数会被忽略,系统会以整张图进行搜索。 request.region="167,467,221,407" # 选填,过滤条件 # int_attr支持的操作符有>、>=、<、<=、=,str_attr支持的操作符有=和!=,多个条件之支持AND和OR进行连接。 # 示例: # 1. 根据IntAttr过滤结果,int_attr>=100 # 2. 根据StrAttr过滤结果,str_attr!="value1" # 3. 根据IntAttr和StrAttr联合过滤结果,int_attr=1000 AND str_attr="value1" request.filter="int_attr=56 AND str_attr=\"test\"" config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) response = client.search_image_by_name(request) print(response.to_map()) if __name__ == '__main__': searchImageByName()
结果示例
{ 'RequestId': '7BC00158-3B9B-49C4-9E25-FFEC28AF3CE8', 'Success': True, 'Code': 0, 'Msg': 'success', 'Auctions': [{ 'CategoryId': 20, 'ProductId': 'test-version-001', 'PicName': 'test-version-001.jpg', 'CustomContent': None, 'score':1.0, 'SortExprValues': '5.37633353624177e+24;0', 'IntAttr': None, 'StrAttr': None }, { 'CategoryId': 20, 'ProductId': 'test_0426_1', 'PicName': 'test_0426_1.png', 'CustomContent': None, 'score':1.0, 'SortExprValues': '2.71303606033325;263', 'IntAttr': None, 'StrAttr': None }], 'Head': { 'DocsReturn': 5, 'DocsFound': 5, 'SearchTime': 15 }, 'PicInfo': { 'CategoryId': 20, 'Region': None, 'AllCategories': [{ 'Id': 0, 'Name': 'Tops' }, { 'Id': 1, 'Name': 'Dress' }, { 'Id': 2, 'Name': 'Bottoms' }, { 'Id': 3, 'Name': 'Bag' }, { 'Id': 4, 'Name': 'Shoes' }, { 'Id': 5, 'Name': 'Accessories' }, { 'Id': 6, 'Name': 'Snack' }, { 'Id': 7, 'Name': 'Makeup' }, { 'Id': 8, 'Name': 'Bottle' }, { 'Id': 9, 'Name': 'Furniture' }, { 'Id': 20, 'Name': 'Toy' }, { 'Id': 21, 'Name': 'Underwear' }, { 'Id': 22, 'Name': 'Digital device' }, { 'Id': 88888888, 'Name': 'Other' }], 'MultiRegion': [{ 'Region': '112,440,76,387' }] } }
Delete接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import DeleteImageRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def deleteImage() : request = DeleteImageRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = '<instanceName>' # 必填,商品id,最多支持 512个字符。 # 一个商品可有多张图片。 request.product_id = '<productId>' # 必填,图片名称,最多支持 512个字符。 # 1. ProductId + PicName唯一确定一张图片。 # 2. 如果多次添加图片具有相同的ProductId + PicName,以最后一次添加为准,前面添加的图片将被覆盖。 request.pic_name = '<picName>' config = Config() # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm config.type = 'access_key' client = Client(config) response = client.delete_image(request) print(response.to_map()) if __name__ == '__main__': deleteImage()
结果示例
{ 'RequestId': '9ADA959B-B639-4B3B-841D-2399F1C34DA8', 'Success': True, 'Message': 'success', 'Code': 0 }
UpdateImage接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import UpdateImageRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def updateImage() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = UpdateImageRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" # 必填,商品ID 不可修改。 request.product_id = "1" # 必填,图片名称,不可修改。 request.pic_name = "1" # 选填,整数类型属性,可用于查询时过滤,查询时会返回该字段。 request.int_attr = "1" # 选填,字符串类型属性,最多支持 128个字符。可用于查询时过滤,查询时会返回该字段。 request.str_attr = "test" # 选填,用户自定义的内容,最多支持4096个字符。 request.custom_content = "这是一个测试说明" response = client.update_image(request) print(response.body.to_map()) if __name__ == '__main__': updateImage()
结果示例
{'Code': 0, 'RequestId': '864F581A-F2F8-1AF8-B1EA-1EFBF177E9F9', 'Success': True}
Detail接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import DetailRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def detail() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = DetailRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" response = client.detail(request) print(response.body.to_map()) if __name__ == '__main__': detail()
结果示例
{ 'Instance': { 'Capacity': 10, 'Name': 'xxxxx', 'Qps': 1, 'Region': 'cn-shanghai', 'ServiceType': 0, 'TotalCount': 99999, 'UtcCreate': 1620382716000, 'UtcExpireTime': 1623081600000 }, 'RequestId': '1BEEACA0-A4C9-1B83-93A6-3005BB769B4E', 'Success': True }
DumpMeta接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import DumpMetaRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def dumpMeta() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = DumpMetaRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" response = client.dump_meta(request) print(response.body.to_map()) if __name__ == '__main__': dumpMeta()
结果示例
{ 'Data': { 'DumpMetaStatus': 'PROCESSING', 'Id': 570 }, 'RequestId': '5F70A624-D90D-1CDE-9549-542D97B68329', 'Success': True }
DumpMetaList接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import DumpMetaListRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def dumpMetaList() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = DumpMetaListRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" # 选填,元数据导出任务id 。 request.id = 567 # 选填,返回结果起始位置,默认1 。 request.page_number = 1 # 选填,返回结果数量,默认20 。 request.page_size = 1 response = client.dump_meta_list(request) print(response.body.to_map()) if __name__ == '__main__': dumpMetaList()
结果示例
{ 'Data': { 'DumpMetaList': [ { 'Code': '0', 'Id': 567, 'MetaUrl': 'https://xxx/xx/xx', 'Msg': 'success', 'Status': 'SUCCESS', 'UtcCreate': 1639969113000, 'UtcModified': 1639969140000 } ], 'PageNumber': 1, 'PageSize': 1, 'TotalCount': 1 }, 'RequestId': '8B2B472B-72EC-1BE5-98F2-780BCBE67F82' }
BatchTask接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import IncreaseInstanceRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def batchTask() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = IncreaseInstanceRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" # 必填,oss 中 bucket名称。 request.bucket_name = "bucketName" # 必填,路径,必须 / 开头, 非 / 结尾。 # 此路径下需要提前准备好 increment.meta 文件,可参考,用户指南下的批量操作文档。 request.path = "/public/xxx" # 选填,请求成功回调地址,http(s):// 。 request.callback_address = "http://xxx/xxx" response = client.increase_instance(request) print(response.body.to_map()) if __name__ == '__main__': batchTask()
结果示例
{ 'Data': { 'Id': 472, 'IncrementStatus': 'PROCESSING' }, 'RequestId': '5D4391D4-54EA-14CD-B616-F23BDE4ECAA3', 'Success': True }
BatchTaskList接口
代码示例
from alibabacloud_imagesearch20201214.client import Client from alibabacloud_imagesearch20201214.models import IncreaseListRequest from alibabacloud_tea_openapi.models import Config from alibabacloud_tea_util.models import RuntimeOptions def batchTaskList() : config = Config() # 创建AK/SK参考:https://help.aliyun.com/document_detail/116401.htm # 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 # 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 # 本示例以将AccessKey ID和AccessKey Secret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。 config.access_key_id = os.environ['CC_AK_ENV'] config.access_key_secret = os.environ['CC_SK_ENV'] # 请更换成您购买实例的区域,例如购买的是杭州区域,则endpoint='imagesearch.cn-hangzhou.aliyuncs.com' config.endpoint = 'imagesearch.<regionId>.aliyuncs.com' # 以下为内网(VPC)访问方式 # 说明:内网(VPC)访问:仅限同区域ECS或资源的访问,例如您购买的图像搜索实例是华东2(上海),那么您的ECS或资源也必须在华东2(上海)才能通过内网VPC地址访问图搜服务,否则会调用不通,如果遇到调用不通,请先检查您的ECS或资源与图像搜索是否在同一个区域。 # config.endpointType = 'internal' // 如果是内网访问图像搜索服务,则endpointType为必填项,值统一为'internal' # config.endpoint = 'imagesearch-vpc.<regionId>.aliyuncs.com' // 为内网访问(VPC)地址,请您更换为您购买实例的区域,例如您购买实例的区域为杭州,则endpoint='imagesearch-vpc.cn-hangzhou.aliyuncs.com' # 请您更换成您购买实例的区域,例如您购买的实例区域为杭州,则更换为regionId='cn-hangzhou' config.region_id = '<regionId>' config.type = 'access_key' client = Client(config) request = IncreaseListRequest() # 必填,图像搜索实例名称。注意是实例名称不是实例ID。购买后通过上云层管控台实例信息一栏查看:https://imagesearch.console.aliyun.com/overview request.instance_name = "xxxxxx" # 选填,任务id。 request.id = 567 # 选填,查询oss 的 BucketName。 request.bucket_name = "BucketName" # 选填,查询oss 的 path 路径。 request.path = "/localization/xxxx" # 选填,返回结果起始位置,默认1。 request.page_number = 1 # 选填,返回结果数量,默认20。 request.page_size = 1 response = client.increase_list(request) print(response.body.to_map()) if __name__ == '__main__': batchTaskList()
结果示例
{ 'Data': { 'Increments': { 'Instance': [ { 'BucketName': 'xxxxx', 'Code': '0', 'ErrorUrl': 'https://ccx/xx/', 'Id': 567, 'Msg': 'success', 'Path': '/public/xx', 'Status': 'NORMAL', 'UtcCreate': 1639107872000, 'UtcModified': 1639125540000 } ] }, 'PageNumber': 1, 'PageSize': 1, 'TotalCount': 1 }, 'RequestId': 'C02F0C44-E61F-1E96-870C-CBE19E137ADF' }
文档内容是否对您有帮助?