1. 程式人生 > >Python控制檯英漢-漢英電子詞典(程式碼分享)

Python控制檯英漢-漢英電子詞典(程式碼分享)

# coding=utf-8
# Filename: trans.py
# Author: qianghaohao(CodeNutter)
# Email: [email protected]
# Program: 控制檯電子詞典
#
import os
import sys
import requests
import random
import json
# import chardet   # 第三方模組檢查字串編碼,用於除錯
from requests.exceptions import ConnectionError, Timeout
# os.system('set PYTHONIOENCODING=UTF-8')
def GetHelp():
    U'''
    GNU trans 1.0
               By  qianghaohao(CodeNutter)
    Usage: trans [OPTION]  [statements]
        --version    版本資訊
        --help       使用幫助
    Example: trans campus
             trans  --version
             trans  --help
    '''
    pass

if (len(sys.argv) < 2):
    print '''
          trans: missing OPTION
          Usage: trans [OPTION] [statements]
          Try 'trans --help' for more details!
          '''
    sys.exit(1)
if sys.argv[1].startswith('--'):
    option = sys.argv[1][2:]
    if option == 'version':
        print 'trans: Version 1.0'
    elif option == 'help':
        print GetHelp.__doc__
    else:
        print '''
              Unknown option!
              Try 'trans --help' for more options!
              '''
        sys.exit(2)
else:
    to_be_trans = ' '.join(sys.argv[1:]).decode('GB2312').encode('utf-8')

    # print chardet.detect(to_be_trans)  # 第三方模組檢查字串編碼,用於除錯
    # --------有道翻譯表單資料--------
    data={}
    data['type']='AUTO'
    data['i']=to_be_trans
    data['doctype']='json'
    data['xmlVersion']='1.8'
    data['keyfrom']='fanyi.web'
    data['ue']='UTF-8'
    data['action']='FY_BY_CLICKBUTTON'
    data['typoResult']='true'

    youdao_url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=dict2.index'

    #  ---------- http報頭:使用者代理 ----------------
    USER_AGENTS = (
        'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:11.0) Gecko/20100101 Firefox/11.0',
        'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100 101 Firefox/22.0',
        'Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20100101 Firefox/11.0',
        ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) '
         'Chrome/19.0.1084.46 Safari/536.5'),
        ('Mozilla/5.0 (Windows; Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46'
         'Safari/536.5')
    )
    #  --------- 模擬手工請求:隨機切換使用者代理 ---------
    headers = {'User-Agent':random.choice(USER_AGENTS)}
    try:
        r = requests.post(youdao_url, timeout=10, headers=headers, data=data)
    except ConnectionError:
        print 'Network connection failed!'
        sys.exit(1)
    except Timeout:
        print 'request timeout!'
        sys.exit(1)

    result = r.json()
    print result['translateResult'][0][0]['tgt'].encode(sys.stdout.encoding)
   使用示例(如果感興趣的朋友可以用pyinstaller工具將py原始碼轉換成exe格式,直接執行,比較方便,在此用直譯器執行):

相關推薦

Python控制檯-漢英電子詞典(程式碼分享)

# coding=utf-8 # Filename: trans.py # Author: qianghaohao(CodeNutter) # Email: [email protected] # Program: 控制檯電子詞典 # import os import sys import requ

Python有趣的微信小程式程式碼分享

Python有趣的微信小程式程式碼分享 1:列印心形 print('\n'.join([''.join([('Love'[(x-y)%4]if((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' ')for x in

5行Python程式碼實現一個簡單的線上詞典

# -*- coding: utf-8 -*- import urllib, urllib2, simplejson while True: url = 'http://fanyi.youdao.com/openapi.do?key=79379998&keyfro

Python基礎筆記_Day14_Python圖形化介面、Python GUI、tkinter、Python詞典

Day14_Python圖形化介面、Python GUI、tkinter、Python英漢詞典 14.01_Python語言基礎(Python實現英漢字典)(掌握) 14.02_Python語言基礎(tkinter概述)(熟練) 14.03_Python語言基礎(建立一個圖形化介面)(熟

python專案之簡易-電子詞典(1)

跟著學做電子詞典專案電子詞典(1)功能說明 : 1.使用者能夠登入註冊 登入憑藉使用者名稱和密碼即可 註冊 要求使用者名稱和密碼 要求使用者名稱不能重複2. 使用者資訊需要長期儲存 使用mysql 或者 mongo3. 要求能夠滿足多使用者同時登入操作的情況4. 使

php+mysql實現查詢詞典的功能

php mysql 查詢 詞典 1.建立數據庫 create database worddb; 2.創建表 create table words( id int auto_increment primary key, en_word varchar(128) not null,

使用Python實現電子詞典

專案內容: 一、功能說明: 1.使用者可以登入和註冊 登入憑藉使用者名稱密碼即可 註冊要求使用者必須填寫使用者名稱和密碼其他內容可自定 使用者名稱要求不能夠重複 2.使用者資料要求使用資料庫長期儲存 資料表自定 3.能夠滿足多個使用者同時登陸操作的

Python GUI實現字典功能、Python tkinter編寫字典

Python GUI實現字典功能、Python tkinter編寫字典 需求分析 本地字典檔案內容如下: Africa n. 非洲 Aids n. 愛滋病 America n. 美洲 April n. 四月 Arab adj. 阿拉伯的\nn. 阿拉伯人 Asia n. 亞洲

Java實現詞典API初版釋出在Maven 2018-09-06

在打算批量程式碼漢化工具 · Issue #86 · program-in-chinese/overview時, 發現沒有現成的Java庫實現英漢查詢功能. 於是開此專案. 原始碼庫: program-in-chinese/english-chinese-dictionary API

瀏覽器外掛-離線詞典 2018-10-12

如前文在瀏覽器外掛中讀取JSON資原始檔末所述, 用瀏覽器外掛實現了不依賴任何線上翻譯服務的英漢詞典. 由於詞典包含77萬個詞條, 外掛大小也達到了13+MB. 詞典資料也包含很多常見短語: 原始碼庫: program-in-chinese/webextension_english_ch

Visual Studio Code外掛-詞典初版釋出 2018-11-06

VS外掛市場地址: 英漢詞典 - Visual Studio Marketplace 開源在: program-in-chinese/vscode_english_chinese_dictionary 如題圖, 在VS Code外掛頁中搜索"英漢詞典", 即可安裝. 之後如果繼續開

VS Code詞典外掛v0.0.4-駝峰下劃線命名 2018-11-09

首先, 在兩天時間內安裝數破百, 多謝支援. VS Code外掛市場地址: 英漢詞典 - Visual Studio Marketplace 開源庫地址同前文: Visual Studio Code外掛-英漢詞典初版釋出 查詢單詞功能基本不變, 在詳細資訊的開頭添加了原詞:

厘清差異,翻譯遊刃有余

asp health scale 條件 安裝 派生 科學 exp signed 翻譯第一步主要是對英語原文的準確理解,在於準確把握每個單詞的含義、每一層英語語法修飾關系;第二步要把理解準確的英語翻譯成通順、符合表達習慣的漢語。   翻譯第一步主要是對英語原文的準確理解,在

制作自己的電子詞典

轉換 androi 下載 導出 選擇 file 點擊 文件 後綴 一待轉換的excel文件 二excel轉化成txt 註:此處不能直接另存為txt格式,mdict所需的txt格式與一般的txt格式不同 需使用工具轉換,附上轉換工具ExcelToTxtP.zip http:/

翻譯 第二篇

bsp 文章 industry 整形 com 美容 cts man product 政府官員 a government official 贊成 approve 我不贊成整形手術 I don‘t approve of comsmetic surgery. 美容的 化

翻譯 第三篇

to do ica geo dispose ons 美國 學院 pos college Man proposes, God disposes. To do as God disposes the American College of Surgeons 美國外科醫生學會

Python學習筆記__17章電子郵件

編程語言 Python # 這是學習廖雪峰老師python教程的學習筆記Email的歷史比Web還要久遠,直到現在,Email也是互聯網上應用非常廣泛的服務。而且幾乎所有的編程語言都支持發送和接收電子郵件。1、郵件的原理1.1、郵件的發送流程假設我們要把郵件從[email protected] 發送到 @sina.

word2016如何互譯

跳轉 不同 pcc 如何 分享 tps 光盤 src http 1.如果是一篇英文文檔且是pdf格式,可以用word2016打開直接轉化成了word,就算不是會員也可以的,在此附上16版的光盤安裝包,可以百度自行下載 (鏈接:https://pan.baidu.com/s/

c專案實現(1)實現電子詞典的翻譯

專案實現功能 通過使用者的輸入,在字典檔案中進行 查詢,返回對應的翻譯內容。 字典檔案的樣式,該檔案已經上傳。 #a                       

Python俄羅斯方塊程式碼分享給大家!好幾百行!親測可用!

廢話不多說!直接上程式碼!需要更多好玩的原始碼或者教程進群:548377875   即可獲取!   #coding=utf-8 from tkinter import * from random import * import threading f