1 から urllibはインポート要求 2 インポートBASE64 3つの インポート要求 4 インポート再 5 インポートJSON 6 インポートurllibは 7 インポートOS 8 9 #获取トークン 10 DEF :get_token(CLIENT_ID、client_secret) 11 ホスト= ' https://aip.baidubce.com /oauth/2.0/token?grant_type=client_credentials&client_id= ' +のclient_id + ' &client_secret = " + client_secret + '' 12の ヘッダー= { ' のContent-Type ':「アプリケーション/ JSON。文字セット= UTF-8 ' } 13 RES = requests.post(ホスト、ヘッダー= ヘッダ) 14 access_tokenは= re.findall(' "access_tokenは": "?(*)" ' 、res.text)[0] 15 リターンaccess_tokenは 16 17 #打开文件夹、进行对比 18 DEF :geturlPath(パス) 19の DIRS = os.listdir(経路) 20 LST = [] 21 用 DIR1 にDIRS: 22 パス= + PAはDIR1 23は lst.append(PA) 24 リターンLST 25 26れている #は、ローカル画像を開き、Base64でに変換 27 DEFの:open_pic2base(イメージ) 28 F =オープン(画像、' RB ' ) 29 IMG = base64.b64encode (達し、f.read())、デコード(' UTF-8 ' ) 30 リターンIMG 31は、 32 DEF 検索(画像3、CLIENT_ID、client_secret、グループ): 33である request_url = " https://aip.baidubce.com/rest/2.0 /フェイス/ V3 /検索」 34 用画像における画像3: 35 、A = open_pic2base(画像) 36 のparams = json.dumps({ " イメージ":、" のimage_typeは":" BASE64 "、" group_id_list " :グループ}) 37 access_tokenは= get_token(CLIENT_ID、client_secret) 38 request_url = request_url + " ?access_tokenは= " + access_tokenは 39 のparams = params.encode(" UTF-8 ") 40 41 リクエスト= urllib.request.Request(URL = request_url、データ= paramsは) 42 43 request.add_header(' のContent-Type '、' アプリケーション/ JSON ' ) 44 応答= urllib.request.urlopen(リクエスト) 45 含有量= response.read() 46 ユーザ= ' 見つかりません' 47を 場合含量: 48 結果= json.loads(content.decode(' UTF-8 ' )) 49 プリント(結果) 50 もし結果[ ' ERROR_CODE ' ] == 0: 51 LST = [] 52 セット= {} 53 ユーザ=結果[ ' 結果' ] [ ' user_list ' ] [0] 54 GROUP_ID =ユーザ[ " GROUP_ID " ] 55 USER_ID =ユーザ[ ' USER_ID ' ] 56 スコア=ユーザ[ ' スコア' ] 57 セット[ " ホストグループ" ] = GROUP_ID 58 セット[ " 類似ユーザー" = USER_ID 59 セット[ " 類似度" ] = スコア 60 lst.append(セット) 61で 印刷(LST) 62で IFスコアが> 85 : 63 add_face2ku = face_add(画像、GROUP_ID、user_idの) 64 、他: 65の パス 66 67 DEF face_add(画像、GROUP_ID、USER_ID): 68 request_url = ' https://aip.baidubce.com/rest/2.0/face/v3/faceset/user/add ' 69件 のparams = json.dumps({ " イメージ":open_pic2base(画像)、" のimage_type ":" BASE64 " " GROUP_ID ":GROUP_ID、" USER_ID " :USER_ID}) 70 access_tokenは= get_token(CLIENT_ID、client_secret) 71 request_url = request_url + " access_tokenは= " + access_tokenは 72 paramsは= params.encode(" UTF-8 " ) 73 要求= urllib.request.Request(URL = request_url、データ= paramsは) 74 request.add_header(' のContent-Type '、' アプリケーション/ JSON ' ) 75 応答= urllibは.request.urlopen(リクエスト) 76 リターン応答 77 78 なら __name__ == ' __main__ ' : 79 CLIENT_ID = ' MeZaaKIbOt5DGp4cfxGpv4wa ' 80 client_secret =' ImadHITTnAvtGkLeugrNUNuG3NOdiE7Q ' 81 パス= R&LT ' G:/ images5 / ' 82 83 画像3 = geturlPath(経路) 84 85 #グループ指定着信と比較ギャラリー 86 検索(画像3、CLIENT_ID、client_secret、' 俳優')