• 项目练习:百度翻译小程序


     1 # -*- coding:utf-8 -*-
     2 # Author:Sure Feng
     3 
     4 import requests
     5 import json
     6 import sys
     7 
     8 class BaiduFanyi(object):
     9     def __init__(self, trans_str):
    10         self.trans_str = trans_str
    11         self.lang_detect_url = "https://fanyi.baidu.com/langdetect"
    12         self.trans_url = "https://fanyi.baidu.com/basetrans"
    13         self.headers = {"User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Mobile Safari/537.36"}
    14 
    15     def parse_url(self, url, data):
    16         """解析URL地址,返回响应内容(dict 格式的)"""
    17         r = requests.post(url=url, data=data, headers = self.headers)
    18         return json.loads(r.content.decode())  # 把Json格式的字符串转换为字典
    19 
    20     def get_ret(self, dict_respond):
    21         """提取翻译结果"""
    22         trans_ret = dict_respond["trans"][0]["dst"]
    23         print("result is: ", trans_ret)
    24 
    25     def run(self):
    26 
    27         # 1 获取语言类型
    28         # 1.1 准备post的URL地址,data数据
    29         lang_detect_data = {"query": self.trans_str}
    30         # 1.2 发送请求,获取语言类型
    31         lang = self.parse_url(self.lang_detect_url, lang_detect_data)["lan"]
    32         # 2 准备post请求数据
    33         trans_data = {"query": self.trans_str, "from": "zh", "to": "en"} if lang == "zh" else 
    34             {"query": self.trans_str, "from": "en", "to": "zh"}
    35         # 3 发送请求,获取响应数据
    36         dict_respond = self.parse_url(self.trans_url, trans_data)
    37         # 4 提取翻译结果
    38         self.get_ret(dict_respond)
    39 
    40 if __name__ == "__main__":
    41     # trans_str = sys.argv[1]
    42     trans_str = input("what would you want to translate>>>")
    43     baidu_fanyi = BaiduFanyi(trans_str)
    44     baidu_fanyi.run()
  • 相关阅读:
    tomcat与eclipse配置
    关于hyperic5.0安装/使用笔记
    java小程序,模拟电视机和遥控
    seldom潜水
    兼容性调试平台
    潜水pw
    scrcpy 👍
    潜水远程调试设备
    尝试方法 在众多平台快速通过脚本自动化验证页面兼容性,可以验证pc,web ,android ,ios,驱动支持java,ruby,c#,python ,js
    try catch嵌套try catch
  • 原文地址:https://www.cnblogs.com/sure-feng/p/10035330.html
Copyright © 2020-2023  润新知