Search code examples
pythonazureapicurlmicrosoft-translator

Using API microsoft translator in a Python script


I am writing a script in Python that detects the language of a provided text.

I found the following command line that works in a terminal, but I would like to use it in my script.

Command :

**curl -X POST "https://api.cognitive.microsofttranslator.com/detect?api-version=3.0" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json" -d "[{'Text':'What language is this text written in?'}]"**.

In the script, elements like the client-secret, the "text", and so on... should be in variables. And I would like to catch the result of the whole command line in a variable and then print it to the user.

How can I do this?

I found the command line here.


Solution

  • The command in Command Line is essentially sending http request. So you just need to use the python code I provide below, just for reference.

    import requests
    import json
    
    url = 'https://api.cognitive.microsofttranslator.com//Detect?api-version=3.0'
    body =[{"text": "你好"}]
    headers = {'Content-Type': 'application/json',"Ocp-apim-subscription-key": "b12776c*****14f5","Ocp-apim-subscription-region": "koreacentral"}
    r = requests.post(url, data=json.dumps(body), headers=headers)
    result=json.loads(r.text)
    a=result[0]["language"]
    print(r.text)
    print("Language = " + a)
    

    enter image description here