在python中,我想使用以下代码将变量字符串发送到Watson Language Translator v3。但是,返回码为400,表示缺少必需的参数。当我使用文字字符串代替变量 j 时(因此: data ='{“ text”:“ hello there”},{“ model_id”:“ en-es”}' 我得到了正确的翻译,如何使用该变量而不是代码400来获得翻译?
import requests, json
headers = {'Content-Type': 'application/json',}
params = (('version', '2018-05-01'),('X-Watson-Learning-Opt-Out', 'true')):
j=json.dumps("hello there")
print(j)
data = '{"text":j},{"model_id":"en-es"}'
r = requests.post(
'https://gateway.watsonplatform.net/language-translator/api/v3/translate',
headers=headers, params=params, data=data, auth=('xxx', 'xxx'))
print(r)
y=json.loads(r.text)
s= y['translations'][0]['translation']
print(s)