嗯,这个程序实际上就是把自己写的中文封装到百度翻译的数据data中,并将data传送到百度翻译的后台,在获取百度翻译返回的数据,将其中的翻译结果输出来.
import requests
import json
# 这个网址就是百度翻译将页面的数据传送到后台的网址
url = "http://fanyi.baidu.com/basetrans"
# 百度翻译用来发送数据的data格式
data = {
"query": "你好世界",
"from": "zh",
"to": "en"
}
headers = {
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) "
"AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"
}
while True:
# 获取用户输入的中文
chinese_str = input("请输入要翻译的中文(输入'0'结束程序):")
data["query"] = chinese_str
if chinese_str == '0':
break
# 发送post请求,把内容传送给百度翻译,并获取得到的内容
response = requests.post(url, data=data, headers=headers)
# 设置response的编码
response.encoding = "utf-8"
html_str = response.content.decode() # json字符串
# 将json转换为字典
dict_ret = json.loads(html_str)
ret = dict_ret["trans"][0]["dst"]
print("翻译结果是:", ret)