Python Microsoft Azure文本分析Coginitive服务编码问题

Python Microsoft Azure文本分析Coginitive服务编码问题,python,json,azure,text-analysis,text-analytics-api,Python,Json,Azure,Text Analysis,Text Analytics Api,为了使用他们的文本分析,Azure需要一个json文件/文档,如下所示: document = { "documents" :[ {"id": "1", "language": "en", "text": "I had a wonderful experience! The rooms were wonderful and the staff was helpful."}, {"id": "2", "language": "en", "text": "I had a terr

为了使用他们的文本分析,Azure需要一个json文件/文档,如下所示:

document = {
  "documents" :[
    {"id": "1", "language": "en", "text": "I had a wonderful experience! The rooms were wonderful and the staff was helpful."},
    {"id": "2", "language": "en", "text": "I had a terrible time at the hotel. The staff was rude and the food was awful."},
    {'id': '3', 'language': 'es', 'text': 'Los caminos que llevan hasta Monte Rainier son espectaculares y hermosos.'},  
    {'id': '4', 'language': 'es', 'text': 'La carretera estaba atascada. Había mucho tráfico el día de ayer.'}]}
我现在遇到的问题是,最后一条记录
id:4
导致了以下错误:

b'{"code":"BadRequest","message":"Invalid request","innerError":{"code":"InvalidRequestBodyFormat","message":"Request body format is wrong. 
Make sure the json request is serialized correctly and there are no null members."}}'
JSON的格式是正确的,它直接来自他们的站点,并且在没有最后一条记录的情况下运行得非常好。我又测试了一些,然后发现是
I
a
抛出了错误。为了确保这一点,我甚至用resumé或fiancé等英语单词测试了它,但仍然是同样的错误。但这没有意义,因为西班牙语是文本分析支持的语言之一,文本语言在处理之前甚至被定义为西班牙语

所以我的问题是,在通过Azure传递数据之前,我是否遗漏了什么?我是否应该转换、更改编码或删除这些字符,还是Azure的API应该能够处理这些字符


编辑:多一点背景知识,我按照他们网站上提供的说明进行设置。除了我提到的以外,它工作得非常好

多亏了@ADyson,我才明白这一点


您必须确保输入编码为
UTF-8
UTF-16
,以便正确运行

这可能是编码问题。您是否使用UTF-8内容类型发送数据?谢谢@ADyson!我最初认为,由于Python3是用UTF-8编码的,所以它也会传递到它的字符串变量中,但我想不会。