通过调用有道词典的mini版api接口进行翻译,音标只取了uk版
import urllib.request
import urllib.parse
import json
def main():
content = "hello"
request_url = 'https://dict.youdao.com/jsonapi?q=good&keyfrom=deskdict.mini&dogVersion=1.0&dogui%20=%20json&client=deskdict&id=4bd7e2bac8f0a6bab&vendor=webdict_default&in=YoudaoDict_webdict_default_8.7.0.0&appVer=8.10.3.0&appZengqiang=0&abTest=8&model=LENOVO&screen=1366*768&le=eng&dicts=%7B%22count%22%3A4%2C%22dicts%22%3A%5B%5B%22ec%22%2C%22ce%22%2C%22cj%22%2C%22jc%22%2C%22ck%22%2C%22kc%22%2C%22cf%22%2C%22fc%22%20%2C%20%22multle%22%20%5D%2C%5B%22web_trans%22%5D%2C%5B%22fanyi%22%5D%2C%5B%22typos%22%5D%5D%7D<H=266'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'}
request = urllib.request.Request(request_url, headers=headers)
# 发送请求并获取相应
response = urllib.request.urlopen(request)
# 返回内容,得到一个json字符串
html = response.read().decode('utf-8')
# 将json字符串转为字典
html = json.loads(html)
print("音标:"+"/"+html['ec']['word'][0]['ukphone']+"/")
wordClassNum = len(html['ec']['word'][0]['trs'])
for i in range(wordClassNum):
print(html['ec']['word'][0]['trs'][i]['tr'][0]['l']['i'][0])
if __name__ == '__main__':
main()