今天需要做一个翻译的工具,找到之前写过的有道翻译,已经不能用了,最后看到百度翻译还不错,不过官方版本是Python2,我需要Python3,就自己写了一个:

# coding: utf8

'''

@Author: LCY

@Contact: lchuanyong@126.com

@blog: http://http://blog.csdn.net/lcyong_

@Date: 2018-01-15

@Time: 19:19

说明: appid和secretKey为百度翻译文档中自带的,需要切换为自己的

python2和python3部分库名称更改对应如下:

httplib ----> http.client

md5 ----> hashlib.md5

urllib.quote ----> urllib.parse.quote

官方链接:

http://api.fanyi.baidu.com/api/trans/product/index

'''

import http.client

import hashlib

import json

import urllib

import random

def baidu_translate(content):

appid = '20151113000005349'

secretKey = 'osubCEzlGjzvw8qdQc41'

httpClient = None

myurl = '/api/trans/vip/translate'

q = content

fromLang = 'zh' # 源语言

toLang = 'jp' # 翻译后的语言

salt = random.randint(32768, 65536)

sign = appid + q + str(salt) + secretKey

sign = hashlib.md5(sign.encode()).hexdigest()

myurl = myurl + '?appid=' + appid + '&q=' + urllib.parse.quote(

q) + '&from=' + fromLang + '&to=' + toLang + '&salt=' + str(

salt) + '&sign=' + sign

try:

httpClient = http.client.HTTPConnection('api.fanyi.baidu.com')

httpClient.request('GET', myurl)

# response是HTTPResponse对象

response = httpClient.getresponse()

jsonResponse = response.read().decode("utf-8")# 获得返回的结果,结果为json格式

js = json.loads(jsonResponse) # 将json格式的结果转换字典结构

dst = str(js["trans_result"][0]["dst"]) # 取得翻译后的文本结果

print(dst) # 打印结果

except Exception as e:

print(e)

finally:

if httpClient:

httpClient.close()

if __name__ == '__main__':

while True:

print("请输入要翻译的内容,如果退出输入q")

content = input()

if (content == 'q'):

break

baidu_translate(content)

官方版本:

#/usr/bin/env python

#coding=utf8

import httplib

import md5

import urllib

import random

appid = '20151113000005349'

secretKey = 'osubCEzlGjzvw8qdQc41'

httpClient = None

myurl = '/api/trans/vip/translate'

q = 'apple'

fromLang = 'en'

toLang = 'zh'

salt = random.randint(32768, 65536)

sign = appid+q+str(salt)+secretKey

m1 = md5.new()

m1.update(sign)

sign = m1.hexdigest()

myurl = myurl+'?appid='+appid+'&q='+urllib.quote(q)+'&from='+fromLang+'&to='+toLang+'&salt='+str(salt)+'&sign='+sign

try:

httpClient = httplib.HTTPConnection('api.fanyi.baidu.com')

httpClient.request('GET', myurl)

#response是HTTPResponse对象

response = httpClient.getresponse()

print response.read()

except Exception, e:

print e

finally:

if httpClient:

httpClient.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2018-08-15

python 实时翻译_python3调用百度翻译API实现实时翻译相关推荐

  1. ai图像识别python的项目_Python3调用百度AI识别图片中的文字功能示例【测试可用】...

    本文实例讲述了Python3调用百度AI识别图片中的文字功能.分享给大家供大家参考,具体如下: 首先pip install命令安装baidu-aip模块,如下图所示(这里使用pip3 install ...

  2. python调用百度地图API爬取西安市POI数据

    任务前提 做该项目之前,首先得有基础知识: 编程语言:python 编译工具:PyCharm 网络爬虫相关知识,xpath库,numpy,pandas等库. 任务准备: 去百度地图开放平台申请密匙:h ...

  3. Python调用百度地图api路径查询

    通过调用百度地图api获取两个地点的距离和时间.参数详见百度地图api官方文档. # -*- coding: utf-8 -*- """ Created on Thu M ...

  4. python 百度云api_Python——调用百度云API实现图文识别

    这是奔跑的键盘侠的第117篇文章 前几天写的一篇<按键精灵二三事系列第九篇--图文识别+发邮件>,有小伙伴留言说,可以直接调用百度云平台AI的OCR图文识别接口,不用自己单独做字库.于是就 ...

  5. python调用百度地图实现导航_python 怎么调用百度地图api

    应用编程接口(Application programming interface,API)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或 ...

  6. python 调用百度地图api 实现批量经纬度转换为实际省市地点(api调用,json解析,mysql读取与写入)

    1.获取秘钥 调用百度地图API实现得申请百度账号或者登陆百度账号,然后申请自己的ak秘钥.链接如下:添加链接描述 下面是百度创建的app设置: 2.调用API将经纬度信息解析成json信息 def ...

  7. python调用百度接口实现ocr识别_Python 3调用百度OCR API实现剪贴板文字识别

    本程序调用百度OCR API对剪贴板的图片文字识别,配合CaptureScreen软件,可快速识别文字. #!python3 import urllib.request, urllib.parse i ...

  8. c语言api获取百度地图,H5调用百度地图API获取地理位置

    //获取当前位置 var geolocation = new BMap.Geolocation(); geolocation.getCurrentPosition(function(r){ alert ...

  9. centerandzoom 无效_Django调用百度地图api在地图上批量增加标记点

    在调用百度地图api进行web开发时遇到了一个需求,我们需要在网页中内嵌一个div 然后在div中调用百度地图的js显示我们所需要的地区.根据需求坐标在地图上添加若干个标记点,并批量的为各个标记点设置 ...

最新文章

  1. vue里面_Vue中如何使用自定义插件(plugin)
  2. 基于OpenCV之视频读取,处理和显示框架的搭建(一)
  3. python 函数调用 不允许关键字参数_你所不知道的Python|函数参数的演进之路
  4. MySQL之三范式:原子性 唯一性 避免数据冗余
  5. 电脑内部,小贴士:电脑内部连接标准
  6. redis aof 备份和恢复_Redis 持久化机制的介绍,了解这些流程很重要
  7. 千万流量大型分布式系统架构设计实战(干货)
  8. 超级计算机summit存储容量,美国Summit超级计算机:采用超过27000块NV计算卡
  9. 微信公众账号开发模式3
  10. 怎样做产品能甩同行一个时代?李彦宏说AI思维助你降维攻击
  11. led灯闪烁代码_如何设置LED灯并使其通过代码闪烁
  12. GitHub Actions 快速入门
  13. Win11系统时间不同步的解决方法
  14. 互联网大佬的乌镇人设
  15. 石子合并——最经典的dp问题
  16. 沪江网校SWF课件打开后叹号问题的解决方案
  17. JAVA 并发编程-多个线程之间共享数据(六)
  18. 【问题记录】Vue错误:Error: Cannot find module ‘chalk‘
  19. 水塔水位测量c语言程序,基于51单片机水塔水箱水位检测系统控制器设计(附程序代码)...
  20. 思科3750配置只允许SSH登录

热门文章

  1. 计算机上可移动磁盘,win10系统我的电脑出现很多个可移动磁盘的解决方法
  2. 卡通化图片python实现代码_媳妇儿喜欢玩某音中的动漫特效,那我就用python做一个图片转化软件。...
  3. 102条,选一条给我留言吧
  4. killall 后面信号_killall 、kill 、pkill 命令区别
  5. Arcgis画出断面线并批量导出
  6. #!/usr/bin/env与#!/usr/bin/
  7. 国基北盛—云计算私有云iaas(2.4)平台搭建
  8. Hexo博客搭建之主题构建(melody)
  9. SQL Server 分组后,字符串拼接
  10. 闪电html编辑器,闪电PDF编辑器官方版