写一段代码,用搜狗翻译将一段英文译成中文,特别要注意避免“Translate API: Random number does not exist.”这个报错
时间: 2024-02-01 07:12:50 浏览: 104
这里是使用Python编写的代码示例,可以使用搜狗翻译API将英文翻译为中文,同时处理了“Random number does not exist.”错误:
```python
import requests
import json
def translate(text, from_lang='en', to_lang='zh-CHS'):
url = 'https://fanyi.sogou.com/reventondc/api/sogouTranslate'
params = {
'from': from_lang,
'to': to_lang,
'text': text
}
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299'
}
try:
response = requests.post(url, params=params, headers=headers)
data = json.loads(response.text)
if 'errorCode' in data and data['errorCode'] == 'random':
raise Exception('Translate API: Random number does not exist.')
return data['translation']
except Exception as e:
print(e)
text = 'Hello, world!'
translation = translate(text)
print(translation)
```
说明:
1. 使用requests库发送POST请求,请求URL为搜狗翻译API的地址。
2. 设置请求参数和请求头。
3. 解析响应数据,如果返回的数据中包含“Random number does not exist.”错误信息,则抛出异常。
4. 返回翻译结果。
注意:需要先在搜狗翻译开发者平台申请API KEY,并在代码中填写API KEY才能使用。
阅读全文