| #! /Usr/bin/env python #-*-Coding: utf8 -*- ''' #===================================================== ============================================== # FileName: translate. py # Desc: To translate with zh to en or en2zh # Author: cold # Email: wh_linux@126.com # HomePage: http://www.linuxzen.com # Version: 0.0.1 # LastChange: 2012-04-23 23:04:08 # History: #===================================================== ============================================== ''' Import urllib Import urllib2 From sys import argv, exit Import re # Display help information Def helpinfo (): Print ''' Usage: pytran {zh2en | en2zh} content ''' # Formatting output Def formatresult (result, srclang ): Resu = result. split ('[[') If (srclang = 'en2zh 'or srclang = 'zh2en '): Firstre = resu [1]. replace ('[', ''). replace (']',''). split ('"') Print 'source word: ', firstre [3] Print 'result: ', firstre [1] If (srclang = 'zh2en '): Piny = firstre [7] Else: Piny = firstre [5] Print 'pinyin: ', piny If (srclang = 'zh2en '): Secresu = resu [2]. replace ('"',''). split ('[') Else: Secresu = resu [2]. replace ('"',''). split ('[') Print 'part of speech: ', secresu [0]. replace (',','') Print 'other interpretations :' For I in ''. join (secresu [1]. split (']'). split (','): Print I # Obtain command line parameters Try: Srclang = argv [1] Except t: Helpinfo () Exit (1) Try: Cont = argv [2] Except t: Helpinfo () Exit (2) # Determining the translation target language is used to determine the Transmission Parameters If (srclang = 'zh2en '): Data = urllib. urlencode ({'client': 'T', 'text': cont, 'Hl ': 'zh-cn', 'tl': 'en ', 'Multires': '1', 'prev': 'btn ', 'Ssel ': '0',' SC ': '1 '}) Elif (srclang = 'en2zh '): Data = urllib. urlencode ({'client': 'T', 'text': cont, 'Hl ': 'zh-cn', 'Sl': 'en', 'tl ': 'zh-cn ', 'Multires': '1', 'prev': 'btn ', 'Ssel ': '0',' SC ': '1 '}) Else: Helpinfo () # Open google translation content Url = 'HTTP: // translate.google.cn/translate_a/t' Req = urllib2.Request (url, data) Req. add_header ("User-Agent", "Mozilla/5.0 + (compatible; + Googlebot/2.1; ++ http://www.google.com/bot.html )") Fd = urllib2.urlopen (req) Result = fd. read () # Formatting output Formatresult (result, srclang) Fd. close () |