Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
143 changes: 82 additions & 61 deletions TencentYoutuyun/youtu.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ def __init__(self, appid, secret_id, secret_key, userid='0', end_point=conf.API_
self._userid = userid
self._end_point = end_point
conf.set_app_info(appid, secret_id, secret_key, userid, end_point)
self.requests_session = requests.Session()

def get_headers(self, req_type):

Expand Down Expand Up @@ -98,9 +99,10 @@ def FaceCompare(self, image_pathA, image_pathB, data_type = 0):
data["urlA"] = image_pathA
data["urlB"] = image_pathB

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':self.IMAGE_NETWORK_ERROR, 'errormsg':'', 'session_id':'', 'similarity':0}
ret = r.json()
Expand Down Expand Up @@ -135,9 +137,10 @@ def FaceVerify(self, person_id, image_path, data_type = 0):
else :
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "confidence":0, "ismatch":0, "session_id":''}
ret = r.json()
Expand Down Expand Up @@ -174,9 +177,10 @@ def FaceIdentify(self, group_id, image_path, data_type = 0):
else :
data["group_id"] = group_id

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "session_id":'', "candidates":[{}]}
ret = r.json()
Expand Down Expand Up @@ -209,9 +213,10 @@ def DetectFace(self, image_path, mode = 0, data_type = 0):
else :
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "session_id":'', "image_id":'', "image_height":0, "image_width":0, "face":[{}]}
ret = r.json()
Expand Down Expand Up @@ -257,9 +262,10 @@ def NewPerson(self, person_id, image_path, group_ids, person_name= '', tag='', d
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "person_id":'', "suc_group":'', "suc_face":0, "session_id":0, "face_id":'', "group_ids":''}

Expand All @@ -283,9 +289,10 @@ def DelPerson(self, person_id) :
"person_id" : person_id
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "deleted":0, "session_id":''}

Expand Down Expand Up @@ -328,9 +335,10 @@ def AddFace(self, person_id, images, tag='', data_type = 0):
else :
data["urls"] = images

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "face_ids":[], "session_id":'', "added": 0, "ret_codes":[]}

Expand Down Expand Up @@ -361,9 +369,10 @@ def DelFace(self, person_id, face_ids):
"face_ids":face_ids
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "session_id":'', "deleted ": 0}

Expand All @@ -390,9 +399,10 @@ def SetInfo(self, person_id, person_name='', tag=''):
"tag":tag
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "person_id":'', "session_id ": ''}

Expand All @@ -416,9 +426,10 @@ def GetInfo(self, person_id):
"person_id": person_id
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "person_id":'', "person_name ": '', "face_ids":[], "tag":'', "secret_id":''}
ret = r.json()
Expand All @@ -438,9 +449,10 @@ def GetGroupIds(self):
"app_id": self._appid
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "group_ids":[]}

Expand All @@ -464,9 +476,10 @@ def GetPersonIds(self, group_id) :
"group_id": group_id
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "person_ids":[]}

Expand All @@ -490,9 +503,10 @@ def GetFaceIds(self, person_id):
"person_id": person_id
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "face_ids":[]}

Expand All @@ -516,9 +530,10 @@ def GetFaceInfo(self, face_id):
"face_id": face_id
}

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "face_info":[]}

Expand Down Expand Up @@ -551,9 +566,10 @@ def FaceShape(self, image_path, mode = 0, data_type = 0):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':'', "face_shape":[{}], "image_height":0, "image_width":0, "session_id":''}

Expand Down Expand Up @@ -586,9 +602,10 @@ def fuzzydetect(self, image_path, data_type = 0, seq = ''):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand Down Expand Up @@ -621,9 +638,10 @@ def fooddetect(self, image_path, data_type = 0, seq = ''):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand All @@ -632,8 +650,6 @@ def fooddetect(self, image_path, data_type = 0, seq = ''):
return {'httpcode':0, 'errorcode':self.IMAGE_NETWORK_ERROR, 'errormsg':str(e)}

return ret



def imagetag(self, image_path, data_type = 0, seq = ''):

Expand All @@ -658,9 +674,10 @@ def imagetag(self, image_path, data_type = 0, seq = ''):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand Down Expand Up @@ -693,9 +710,10 @@ def imageporn(self, image_path, data_type = 0, seq = ''):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand All @@ -704,7 +722,7 @@ def imageporn(self, image_path, data_type = 0, seq = ''):
return {'httpcode':0, 'errorcode':self.IMAGE_NETWORK_ERROR, 'errormsg':str(e)}

return ret

def idcardocr(self, image_path, data_type = 0, card_type = 1 ,seq = ''):

req_type='idcardocr'
Expand All @@ -728,9 +746,11 @@ def idcardocr(self, image_path, data_type = 0, card_type = 1 ,seq = ''):
data["image"] = base64.b64encode(open(filepath, 'rb').read()).rstrip().decode('utf-8')
else:
data["url"] = image_path
r = {}

try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand Down Expand Up @@ -763,9 +783,10 @@ def namecardocr(self, image_path, data_type = 0, retimage= 1, seq = ''):
else:
data["url"] = image_path

r = {}
try:
r = requests.post(url, headers=headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode':r.status_code, 'errorcode':'', 'errormsg':''}

Expand All @@ -786,9 +807,10 @@ def livegetfour(self, seq = ''):
'seq' : seq
}

r = {}
try:
r = requests.post(url, headers = headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode' : r.status_code, 'errorcode' : '', 'errormsg' : '', 'validate_data' : ''}
ret = r.json()
Expand Down Expand Up @@ -834,9 +856,10 @@ def livedetectfour(self, validate_data, video_path, seq = '', card_path = '', c
data['validate_data'] = validate_data
data['compare_flag'] = compare_flag

r = {}
try:
r = requests.post(url, headers = headers, data = json.dumps(data))
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode' : r.status_code, 'errorcode' : '', 'errormsg' : '', 'live_status' : '', 'live_msg' : '', 'compare_status' : '', 'compare_msg' : '', 'sim' : 0, 'photo' : ''}
ret = r.json()
Expand Down Expand Up @@ -875,12 +898,13 @@ def idcardlivedetectfour(self, idcard_number, idcard_name, validate_data, video_
data['idcard_name'] = idcard_name
data['validate_data'] = validate_data

r = {}
try:
r = requests.post(url, headers = headers, data = json.dumps(data))
if r.status_code != 200 :
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200 :
return {'httpcode' : r.status_code, 'errorcode' : '', 'errormsg' : '', 'live_status' : '', 'live_msg' : '', 'compare_status' : '', 'compare_msg' : '', 'sim' : 0, 'video_photo' : ''}
ret = r.json()
ret = r.json()
except Exception as e:
return {'httpcode':0, 'errorcode':self.IMAGE_NETWORK_ERROR, 'errormsg':str(e), 'live_status' : '', 'live_msg' : '', 'compare_status' : '', 'compare_msg' : '', 'sim' : 0, 'video_photo' : ''}

Expand Down Expand Up @@ -914,17 +938,14 @@ def idcardfacecompare(self, idcard_number, idcard_name, image_path, data_type =
data['idcard_number'] = idcard_number
data['idcard_name'] = idcard_name

r = {}
try:
r = requests.post(url, headers = headers, data = json.dumps(data))
if r.status_code != 200:
req = requests.Request('POST', url, data=json.dumps(data), headers=headers)
prepped = self.requests_session.prepare_request(req)
r = self.requests_session.send(prepped)
if r.status_code != 200:
return {'httpcode' : r.status_code, 'errorcode' : '', 'errormsg' : '', 'similarity' : '', 'session_id' : session_id}
ret = r.json()
ret = r.json()
except Exception as e:
return {'httpcode':0, 'errorcode':self.IMAGE_NETWORK_ERROR, 'errormsg':str(e), 'similarity' : '', 'session_id' : session_id}

return ret