我是靠谱客的博主 冷酷纸鹤,最近开发中收集的这篇文章主要介绍Python——百度AI图像识别API实现动物识别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

摘要:百度AI的文档中心是Python2写的示例代码,我的是Python3,之间遇到一些问题,主要是字符串的编码问题,后面有总结。以下是修改之后的Python3 示例代码


一、获取access_token示例代码

import urllib.request

# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
request = urllib2.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib2.urlopen(request)
content = response.read()
if (content):
    print(content)

以上的client_id与client_secret分别对应百度云管理中心图像识别应用的API Key和Secret Key

 运行得到一段json文本,获取access_token和expires_in(token的过期时间)


二、请求代码示例

该请求用于识别一张图片,即对于输入的一张图片(可正常解码,且长宽比较合适),输出动物识别结果。

# encoding:utf-8
import base64
import urllib.parse
import urllib.request

'''
动物识别
'''

request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v1/animal"

# 二进制方式打开图片文件
f = open('[本地文件]', 'rb')
img = base64.b64encode(f.read())

params = {"image":img,"top_num":6}
params = urllib.parse.urlencode(params).encode(encoding='UTF8')

access_token = '[调用鉴权接口获取的token]'
request_url = request_url + "?access_token=" + access_token
request = urllib.request.Request(url=request_url, data=params)
request.add_header('Content-Type', 'application/x-www-form-urlencoded')
response = urllib.request.urlopen(request)
content = response.read()
if content:
    print(bytes(content).decode('utf-8'))

三、 报错总结:

1.python语言xe6x97xa0xe6xb3x95xe5x8axa0xe8乱码字符转换:

>>> t= r'xe6x97xa0xe6xb3x95xe5x8axa0xe8xbdxbdxe6x8exa7xe5x88xb6xe5x99xa8:Index.php'

>>> print (bytes(t).decode('utf-8'))

摘自:https://blog.csdn.net/isozhj/article/details/70738882

2.python3.x执行post请求时报错“POST data should be bytes or an iterable of bytes...”的解决方法:

在urlencode语句后加encode(encoding='UTF8')

eg:

params = urllib.parse.urlencode({'userid':'381fccbd776c4deb'}).encode(encoding='UTF8')

摘自:https://blog.csdn.net/dushu990/article/details/51767189

 

 

 

 

最后

以上就是冷酷纸鹤为你收集整理的Python——百度AI图像识别API实现动物识别的全部内容,希望文章能够帮你解决Python——百度AI图像识别API实现动物识别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部