# -*- coding: utf-8 -*-
import ssl
import sys
import base64
from aip import AipFace
APP_ID = '11185471'
API_KEY = 'NkngOZ89LmAXhbvw6fOsnTl7'
SECRET_KEY = 'Ns6bXAQ3VFo78vIx1qq5GdxWvAdztfie'
client = AipFace(APP_ID, API_KEY, SECRET_KEY)
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read()
images = [
get_file_content('fbb1.jpg').decode('latin1'),
get_file_content('fbb2.jpg').decode('latin1'),
# str(get_file_content('g:/py_test/fbb1.jpg'), encoding='latin1'),
# str(get_file_content('g:/py_test/fbb2.jpg'), encoding='latin1'),
# str(base64.b64encode(get_file_content('g:/py_test/fbb1.jpg'))),
# str(base64.b64encode(get_file_content('g:/py_test/fbb2.jpg'))),
]
print(type(images[0]))
print(client.match(images))
报错:{u'log_id': 4082081061L,
u'timestamp': 1525742053,
u'cached': 0,
u'result': None,
u'error_code': 222001,
u'error_msg': u'param[image] is null'}
params = "{\"image_template\":{\"image\":\""+str(b64Image1,'utf-8')+"\",\"image_type\":\"BASE64\",\"quality_control\":\"NONE\"},\"image_target\":{\"image\":\""+str(b64Image2,'utf-8')+"\",\"image_type\":\"BASE64\",\"quality_control\":\"NONE\"}}"
试过了,可以的,str()这块会报错,说参数只有一个,不转变之久img1就可以了
Can I add your WeChat
试过了,可以的,str()这块会报错,说参数只有一个,不转变之久img1就可以了
大神!!!我刚发现是key和value的问题,您就解决了,小女子感激不尽,我试下
参数是json格式拼接.你拼接的也没有key只有 value 所以会提示 image参数不存在
image和image_type是必须填写的2个参数。官网并没有示例代码不知道为什么。
反正我是瞎怼出来了。你可以参考一下
python
不是json的问题 ,这是你调用百度的API接口 给你返回的信息数据,其中你看error_msg异常消息说的,param【image】is null,翻译过来就是 image这个参数是空的 ,所以我认为是你传参数的问题,你是用什么语言编写呢
是json问题,里面的数据是错的,但也不知道咋解决
jeson那边的问题,郁闷
image这个参数你传的是空,
client.match(images),你传给百度的这个是空的 可以排查看看