1. 程式人生 > >Python3呼叫百度翻譯API,實現實時翻譯

Python3呼叫百度翻譯API,實現實時翻譯

今天需要做一個翻譯的工具,找到之前寫過的有道翻譯,已經不能用了,最後看到百度翻譯還不錯,不過官方版本是Python2,我需要Python3,就自己寫了一個:

# coding: utf8
'''
    @Author: LCY
    @Contact: [email protected]
    @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()


相關推薦

Python3呼叫翻譯API實現實時翻譯

今天需要做一個翻譯的工具,找到之前寫過的有道翻譯,已經不能用了,最後看到百度翻譯還不錯,不過官方版本是Python2,我需要Python3,就自己寫了一個: # coding: utf8 ''' @Author: LCY @Contact: [email&

呼叫地圖api通過ip獲取當前城市以及經緯度

一、申請Ak值 登入百度地圖開放平臺: 建立應用: 建立成功後ip值就有了: 二、程式碼實現 <?php $ip="xxxxxxx"; $content=file_get_contents("http://api.map.baidu.com/location/ip?

Python3-呼叫語音REST API

轉自:https://blog.csdn.net/wolfblood_zzx/article/details/46418635 (百度的rest介面的部分網址發生了一定的變化,相關程式碼已更新) 百度通過 REST API 的方式給開發者提供一個通用的 HTTP 介面,基於該介面,開

java呼叫地圖API開發線上地圖開發——未完待續

這裡是目錄 一、引入百度地圖API 二、百度地圖開發 1、定義一個div來存放地圖 2、生成地圖 3、新增一個跳躍的點 4、新增控制元件 5、有其他需要的請留言 一、引入百度地圖API   百度地圖官方示例:http://lbsyun.b

Python3 呼叫翻譯

OS: win 7 + python 3.7 適用於翻譯多條英文短句。 使用 下載並安裝 Python3.7 安裝引用包 pip install urllib3 & openpyxl 官網使用的包http.cl

js呼叫地圖api實現定位

<?php /** * Created by PhpStorm. * User: onlythen * Date: 5/26/15 * Time: 3:23 PM */ session_start(); require_once("config.php"); $link_id=mys

【Python】呼叫REST API實現語音識別

目前,語音識別,即將語音內容轉換為文字的技術已經比較成熟,遙想當時錘子釋出會上展示的訊飛輸入法語音識別,著實讓訊飛火了一把。由於此類語音識別需要採集大量的樣本,才能達到一定的準確度,個人很難從零開

地圖API根據經緯度實現車輛移動軌跡繪製

百度地圖,實現車輛軌跡繪製 實現思路: 1.根據經緯度實現車輛軌跡繪製 2.使用百度地圖API的兩個覆蓋物實現,Polyline(折線)繪製軌跡,Marker(圖示)繪製小車圖示 3.將每兩個座標間連線起來,形成連貫的軌跡線路 4.生成下一個圖示後刪除上一個繪製的圖示,形成

Android——呼叫天氣API實現天氣預報

專案中有需求要加入天氣當地天氣預報功能,我的做法很簡單,使用的百度天氣API提供天氣資料,使用Xutils進行請求,用GSON進行的資料解析,反正已經有人造好了輪子,直接拿來用就是。 百度天氣使用的是車聯網API,值得提出的一點是,由於API更新後,你所建立的應用型別,夠選

使用html5獲取當前手機的經緯度並接入地圖API查詢出當前位置

api detail attribute spa rip coord component per bar 最近項目需要,稍微研究一下html5獲取當前地理位置的問題。 獲取當前位置的經緯度很簡單,一句代碼就搞定 [javascript] view plain cop

地圖API展示地圖和添加控件

空間 鼠標滾輪 比例尺 鼠標 right size ofo ext aid 1、申請百度賬號和AK 點我申請 2、準備頁面 根據HTML標準,每一份HTML文檔都應該聲明正確的文檔類型,我們建議您使用最新的符合HTML5規範的文檔聲明: <!DOCTYPE html

python3 通過地圖API獲取城市POI點並存於CSV格式

原文資訊: 作者:WenWu_Both  出處:http://blog.csdn.net/wenwu_both/article/  版權:本文版權歸作者和CSDN部落格共有  轉載:歡迎轉載,但未經作者同意,必須保留此段宣告;必須在文章中給出原文連結;否則必究法律責

呼叫地圖API的小demo

update <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta nam

Android進階:步驟四:Android 接入地圖API 基礎實現

內容概括: 註冊申請百度地圖開發平臺賬號 這裡是地址  如何申請百度地圖的賬號也有官方文件:在這裡 申請祕鑰(AK)、快速獲取釋出版SHA1和測試版SHA1和包名 (文件裡面也有如果建立應用以及申請的教程,但在Android Studio中實現更加簡單) 百度地

呼叫地圖API定位位置

以下程式碼是百度開發示例程式碼: <html> <head>     <meta http-equiv="Content-Type" content="text/html; charse

呼叫地圖API

<html> <div id="allmap"></div> </html> // ak為你註冊的金鑰 <script type="text/javascript" src="http://api.map.baidu.com/api

html呼叫地圖api

具體程式碼 <!DOCTYPE html> <head> <meta  charset="utf-8" /> <title>百度地圖API</title> <script type="text/javascr

呼叫AI開放平臺實現圖片文字識別

閒話少說: 註冊百度賬號,獲取APP_ID,API_KEY,SECRECT_KEY 檢視SDK,下面是我呼叫識別圖片 import os import csv from aip import AipO

python3調取地圖API輸出某地點的經緯度資訊

  1. 檢視API介面說明 地址:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding   注:callback的功能暫未研究     2. 申請自己的

呼叫OCR API過程小記

呼叫百度OCR API過程小記 【標籤】 OCR API Python data:2018-10-19 author:怡寶2號 【總起】通過url對百度文字識別API進行呼叫,語言為python2 1. 在百度雲控制檯建立API應用 整理流程: