Hello,
It seems like you have some JSON issue like you try to parse something which Python think is byte stream not a simple string. In order to parse this, you need to convert it into a string first.
Below is my sample code working for me.
import requests, uuid, json
# Add your subscription key and endpoint
subscription_key = "9d71*****************5ea"
endpoint = "https://api.cognitive.microsofttranslator.com"
# Add your location, also known as region. The default is global.
# This is required if using a Cognitive Services resource.
location = "westus2"
path = '/translate'
constructed_url = endpoint + path
params = {
'api-version': '3.0',
'to': ['en']
}
constructed_url = endpoint + path
headers = {
'Ocp-Apim-Subscription-Key': subscription_key,
'Ocp-Apim-Subscription-Region': location,
'Content-type': 'application/json',
'X-ClientTraceId': str(uuid.uuid4())
}
# You can pass more than one object in body.
body = [{
'text': 'Mien name ist wichtiger als dein name.'
}]
request = requests.post(constructed_url, params=params, headers=headers, json=body)
response = request.json()
print(json.dumps(response, sort_keys=True, ensure_ascii=False, indent=4, separators=(',', ': ')))
Thanks.
Regards,
Yutong