此文是自己上手Python接触的项目,顺便整理出的相关代码,欢迎吐槽。
JSON Web Token
可以参考理解:http://blog.leapoahead.com/2015/09/06/understanding-jwt/
1、Python3 JSON 数据解析
json.dumps(): 对数据进行编码。
json.loads(): 对数据进行解码。
参考下面这个例程:
#!/usr/bin/python3
import json
# Python 字典类型转换为 JSON 对象
data1 = {
'no' : 1,
'name' : 'Runoob',
'url' : 'http://www.runoob.com'
}
json_str = json.dumps(data1)
print ("Python 原始数据:", repr(data1))
print ("JSON 对象:", json_str)
# 将 JSON 对象转换为 Python 字典
data2 = json.loads(json_str)
print ("data2['name']: ", data2['name'])
print ("data2['url']: ", data2['url'])
2、Python3 基于百度easyDL图像分类平台的开发
# =============================================================================
# """
# Created on Mon Sep 10 15:39:14 2018
# 向URL申请 并向其上传3张图片,并将返回的数据分解处理,每张图都返回一下信息:
# content_list[0]['name']: 01
# content_list[0]['score']: 0.9798905849456787
# ********catetory1*********代表最大可能性判断的图
# content_list[1]['name']: [default]
# content_list[1]['score']: 0.01209783460944891
# ********catetory2*********次级
# content_list[2]['name']: 02
# content_list[2]['score']: 0.008011565543711185
# ********catetory3*********再次级
# @author: Emily
# """
# =======================
import base64
import json
import requests
import os
#access_token的获取
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[这里放属于你自己的client_id]&client_secret=[这里放属于你自己的client_secret]'
response = requests.get(host)
content = response.json()
access_token = content["access_token"]
#图像文件处理
files = os.listdir('E:\Anaconda3-5.2.0\My Project\img_content') #将来希望实现自定义文件夹
files.append(0) #在列表末端加入一个0 作为循环结束的标志
for each in files:
if each == 0:
break;
img_div = 'E:\Anaconda3-5.2.0\My Project\img_content' + '\\' + each
image = open(img_div, 'rb').read() #r'路径名,可以表示/此时是表示路径'
data = {'image': base64.b64encode(image).decode()}
#不需要关闭文件?由于Python的机制?这是问题,还未解决
#请求URL返回结果
request_url = 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/classification/GT_xiaoboshi0111' + "?access_token=" + access_token
response = requests.post(request_url, data=json.dumps(data))
content = response.json()
#输出结果
content_list = content.pop('results') #从字典中获取数据并保存在content_list中(content_list是一个列表)
#处理上面字典content中获取的列表content_list
#1
print ("content_list[0]['name']: ", content_list[0]['name'])
print ("content_list[0]['score']: ", content_list[0]['score'])
print('********catetory1*********')
#2
print ("content_list[1]['name']: ", content_list[1]['name'])
print ("content_list[1]['score']: ", content_list[1]['score'])
print('********catetory2*********')
#3
print ("content_list[2]['name']: ", content_list[2]['name'])
print ("content_list[2]['score']: ", content_list[2]['score'])
print('********catetory3*********')
#导入特定的excel表格(略)