Forum Webscript.Ru

Программирование => Perl => Тема начата: Biggelow от 26 Декабря 2006, 05:57:28

Название: Перевод
Отправлено: Biggelow от 26 Декабря 2006, 05:57:28
Здравствуйте,

Вот столкнулся с такой проблемой нужно налету перводить сайт с японского на английский, а затем с английского на русский. Может подскажите существуют ли способы перевода(наиболее интересует английский в русский)?
Название: Перевод
Отправлено: NeoNox от 26 Декабря 2006, 14:17:44
Если качество http://babelfish.altavista.com/ устраивает, то бери Lingua::Translate
Название: Перевод
Отправлено: Biggelow от 27 Декабря 2006, 05:45:14
А он бесплантный этот
Lingua::Translate
и на всех ли хостингах он стоит?
есть ли у Вас примеры работы с ним?
Название: Перевод
Отправлено: xames от 27 Декабря 2006, 12:22:19
http://search.cpan.org/search?query=Lingua%3A%3ATranslate&mode=all
Название: Перевод
Отправлено: Biggelow от 29 Декабря 2006, 06:34:59
А кто-нибудь пробовал его в деле? Интересует прежде всего скорость.
Название: Перевод
Отправлено: NeoNox от 29 Декабря 2006, 14:55:06
Biggelow скорость зависит от скорости соединения ваших серверов и от скорости самого сервера babelfish. Только качество перевода.. это не для серьезного сайта - точно. А то получится как у Мадонны с русскими вентиляторами.
Название: Перевод
Отправлено: Biggelow от 23 Мая 2007, 08:19:07
Подскажите, что тут неверно:

sub urlencode {
   local($val)=@_;
   $val=~s/\\+/ /g;
   $val=~s/%([0-9A=Ha-h]{2})/pack(\'C\',hex($1))/ge;
return $val;
}

sub translate_headers {
   $text = $_[0];

   # Create a request
   my $headers = HTTP::Headers->new(\'Accept-Language\' => "no, en",
              \'Accept-Charset\' => "utf-8,KOI8-R;q=0.7,*;",
              \'Accept-Encoding\' => "gzip,deflate",
              \'Accept\' => "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1");

   my $ua = LWP::UserAgent->new($headers);
   $ua->agent(\'Mozilla/5.0\');
   $ua->timeout(100);

   my $url = "http://www.babelfish.av.com/tr";

   $text = Unicode::Japanese->new($_[0],\'euc\')->get;

   # Pass request to the user agent and get a response back
   my $res = $ua->post($url,
         {"doit" => "done",
         "intl" => "1",
         "tt" => "urltext",
         "trtext" => urlencode($text),
         "lp" => "ja_en"});

   # Check the outcome of the response
   if ($res->is_success) {
       $cont = $res->content;
   } else {
       $cont = $res->status_line, "\\n";
   }

   my @transarr = split("
", $cont);
   @transarr = split("
", $transarr[1]);

   return $transarr[0];
}
Название: Перевод
Отправлено: Biggelow от 29 Мая 2007, 12:11:49
Ну что мне никто не может помочь?
Название: Перевод
Отправлено: Phoinix от 01 Июня 2007, 18:14:20
Biggelow
Цитировать
$val=~s/%([0-9A=Ha-h]{2})/pack(\'C\',hex($1))/ge;


Может скажешь что пишет error_log?