怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

sh/bash/dash/ksh/zsh等Shell脚本
回复
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#1

帖子 iheartpp » 2008-12-30 16:16

我看到IRC里面有一个机器人,可以自动翻译。

比如跟^k^说这样一句话:
`t 数学
他就能把mathematics传回来。

于是产生一个想法:
能不能做一个脚本把一个文件(里面每一行都有一个中文词)自动译成英文,把英文单词搁在中文单词的下面?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#2

帖子 eexpress » 2008-12-30 16:35

找那个bt的wiiw 或者 ikk问啊。
● 鸣学
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#3

帖子 iheartpp » 2008-12-31 0:43

eexpress 写了:找那个bt的wiiw 或者 ikk问啊。
没看懂这些行话 :em03

我只是想简化一下工作量,给自己的工作带来一些方便而已。能给出具体些的建议么?谢谢。
changys04
帖子: 286
注册时间: 2006-11-08 16:33
送出感谢: 0
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#4

帖子 changys04 » 2008-12-31 9:34

改一下这个python脚本就行
http://blog.591by.com/show-194-1#cm10
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#5

帖子 iheartpp » 2008-12-31 23:39

changys04 写了:改一下这个python脚本就行
http://blog.591by.com/show-194-1#cm10
1 Thanks
2 方便看到这个帖子的人,把上面的代码贴到下面,url楼上说了。

代码: 全选

   1.  #!/usr/bin/python  
   2. #-*-coding:utf-8-*-  
   3.   
   4. # 使用httplib进行post数据  
   5.   
   6. import httplib, urllib; #加载web通讯类模块  
   7. import sys,getopt; #加载获取命令行参数模块  
   8.   
   9. opts,argv = getopt.getopt(sys.argv[1:],'',['']); #获取命令行参数  
  10. c = " ";  
  11. argv = c.join(argv); #对参数进行整合 split 是对数据进行拆分  
  12. print "你输入的是:",argv;  
  13. params = urllib.urlencode({'sl':'en',  
  14.                            'tl':'zh-CN',  
  15.                            'text':argv,  
  16.                            'client':'t'}); #进行GET or POST的参数列表  
  17. headers = {"User-Agent": "Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html)"} #输出标头  
  18. conn = httplib.HTTPConnection("translate.google.cn"); #创建一个特定连接  
  19. conn.request("GET","/translate_a/t?" + params,headers=headers);  #发送数据请求  
  20. data = conn.getresponse();  #返回得到的数据结果  
  21. data1 = data.read(); # 读取返回结果  
  22. conn.close(); #关闭连接  
  23. print "翻译结果为:",data1; #输出翻译结果  
3 出现错误

代码: 全选

/opt/mine/en2ch: line 9: syntax error near unexpected token `('
/opt/mine/en2ch: line 9: `opts,argv = getopt.getopt(sys.argv[1:],'',['']); #获取命令行参数  '
如何解决?
changys04
帖子: 286
注册时间: 2006-11-08 16:33
送出感谢: 0
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#6

帖子 changys04 » 2009-01-02 3:21

顶一下,我这里运行的挺好的,不解了...
头像
sevk
帖子: 2059
注册时间: 2007-05-08 16:26
系统: arch
来自: 火星内核某分子内某原子核内
送出感谢: 20 次
接收感谢: 6 次
联系:

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#7

帖子 sevk » 2009-01-02 9:16

笔记本 :
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#8

帖子 iheartpp » 2009-01-04 0:10

研究研究ing
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#9

帖子 xiooli » 2009-01-07 22:31

这里有个dic脚本,是我平常常用的。lz可以参考:

代码: 全选

#!/bin/bash

str="`xsel`"
while true ; do
  a="`xsel`"
  if [ "$a" != "$str" ] ; then
    str="$a"
    [ ${#a} -lt 15 ] && word=`w3m -dump -no-cookie http://dict.cn/mini.php?q="$a" | sed -e '$d' -e 's/</ /g' -e 's/>/ /g'`
    gnome-osd-client -f "<message id='word' osd_fake_translucent_bg='off' osd_vposition='top' osd_halignment='right' animations='on' hide_timeout='10000'><span size='15000' foreground='pink'>`echo "$word"`</span></message>"
  fi
  sleep 1
done 
关键在这一句:

代码: 全选

word=`w3m -dump -no-cookie http://dict.cn/mini.php?q="$a" | sed -e '$d' -e 's/</ /g' -e 's/>/ /g'`
不过这个是英文翻中文的,翻中文还要设计断词的问题,就大条了,如果你事先将中文分词写入文件的话会较方便一点。
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 怎样设计一个翻译脚本?可以把一个文件里面的中文单词全部翻译成英文?

#10

帖子 iheartpp » 2009-01-09 1:05

xiooli 写了:这里有个dic脚本,是我平常常用的。lz可以参考:

代码: 全选

#!/bin/bash

str="`xsel`"
while true ; do
  a="`xsel`"
  if [ "$a" != "$str" ] ; then
    str="$a"
    [ ${#a} -lt 15 ] && word=`w3m -dump -no-cookie http://dict.cn/mini.php?q="$a" | sed -e '$d' -e 's/</ /g' -e 's/>/ /g'`
    gnome-osd-client -f "<message id='word' osd_fake_translucent_bg='off' osd_vposition='top' osd_halignment='right' animations='on' hide_timeout='10000'><span size='15000' foreground='pink'>`echo "$word"`</span></message>"
  fi
  sleep 1
done 
关键在这一句:

代码: 全选

word=`w3m -dump -no-cookie http://dict.cn/mini.php?q="$a" | sed -e '$d' -e 's/</ /g' -e 's/>/ /g'`
不过这个是英文翻中文的,翻中文还要设计断词的问题,就大条了,如果你事先将中文分词写入文件的话会较方便一点。
xie xie! :em01
回复

回到 “Shell脚本”