我正在使用请求库编写 Web 服务客户端。我正在获取包含文件和文本 json 的 multipart/form-data 中的数据。我不知道如何解析它。是否有一个合适的库来解析 python 中的多部分/表单数据格式,或者我应该自己编写解析器?
my code:
data = {
"prototypeModel" :('prototypeModel', open(prototypeModel, 'rb'), 'application/octet-stream', {'Expires': '0'}),
"mfcc_1" : ('mfcc', open(mfcc_1, 'rb'), 'application/octet-stream', {'Expires': '0'}),
"mfcc_2" : ('mfcc', open(mfcc_2, 'rb'), 'application/octet-stream', {'Expires': '0'}),
"mfcc_3" : ('mfcc', open(mfcc_3, 'rb'), 'application/octet-stream', {'Expires': '0'}),
}
print( '---------------------- start enroll ----------------------')
testEnrollResponse = requests.post(server+sessionID, files = data, json = declaredParameters)
b'\r\n--c00750d1-8ce4-4d29-8390-b50bf02a92cc\r\n内容处置:
表单数据; name="playbackHash"\r\n内容类型:
应用程序/八位字节流\r\n\r\n\x16\x00\x00\x00\x00\x00\x00\x00序列化::存档\n\x00\x04\x08\x04
....
x00\x00R\x94\x9bp\x8c\x00\r\n--c00750d1-8ce4-4d29-8390-b50bf02a92cc\r\n内容处置:
表单数据; name="usersMFCC"\r\n内容类型:
应用程序/八位字节流\r\n\r\n\x16\x00\x00\x00\x00\x00\x00\x00序列化::存档\n\x00\x04\x08\x04\x08\x01\x00\x00 \x00\x00\x00\x00\x00\x00\xf8\x16\x00\x00\x00\x00\x00\x00u\xbd\xb4/\xda1\xea\xbf\x0f\xed\xa2x80\xd9\x95Yxn\xd0?\r\n--c00750d1-8ce4-4d29-8390-b50bf02a92cc\r\n内容处置:
表单数据; name="scoreAndStatus"\r\nContent-Type: application/json;
charset=utf-8\r\n\r\n{"lexLikelihood":1.544479046897232,"overallScore":-nan,"playbackLikelihood":-inf,"status":{"errorCode":0,"errorMessage":" “}}\r\n--c00750d1-8ce4-4d29-8390-b50bf02a92cc--\r\n'
我用“.....”替换了更多的二进制数据