2012-06-18 45 views
1

我们已经安装器语言翻译:: Perl模块,引发错误,并用它如下类语言::翻译而执行

#!/usr/bin/perl 

use Lingua::Translate; 
my $trans = Lingua::Translate->new 
       (back_end => 'Babelfish', 
        src => "en", 
        dest => "it",); 
print $trans->translate("Hello world"); 

Excuting这将导致以下错误:

Translation back-end failed; Request timed out more than 2 times (Request 1:301 Moved Permanently; Request 2:301 Moved Permanently; Request 3:301 Moved Permanently;) at /usr/local/share/perl/5.10.1/Lingua/Translate/Babelfish.pm line 206. 

回答

3

我怀疑这与http://babelfish.yahoo.com/现在重定向到http://www.microsofttranslator.com/这一事实有关。我不知道底层引擎是否已经改变。我将检查CPAN以查看是否有Lingua :: Translate的更新版本,或者检查perldoc以查看该URL是否可在给定后端内配置。

这已经发生在:见this bug report

基于该补丁,看起来您可能会添加babelfish_uri作为传递给Lingua :: Translate-> new()的一个散列元素。这不是在文档中,它只是一个受过教育的猜测。

+0

你能否提出一种替代方法来进行这种语言翻译? – Rehna