|
|
|
| Добрый вечер всем! Нужна ваша помощь!
Нужно сделать онлайн перевод текста с английского на русский с помощью google. Как с помощью GET сделать разобрался, но мне нужно переводить тексты до 5тыс. символол, т.е нужно как-то с помощью POST.
Если кто сталкивался с такой проблемой, киньте ссылку на какой ресурс почитать или может подскажите чем.
Что смог найти, так это перевод через translate.orionnet.ru, пример приведу, может кому пригодится. Но вот говорят, что гугл переводит лучше.
<?php
$text="Мой пример текста";
$host="translate.orionnet.ru";
$refer="http://translate.orionnet.ru/";
$zap="/translate.php";
$query="query=".$text."&sl=en&tl=ru&x=".rand(0,100)."&y=".rand(0,100);
$post="POST $zap HTTP/1.1\r\nHost: $host\r\n".
"Referer: $refer\r\nAccept-language: en\r\n".
"X-Requested-With: XMLHttpRequest\r\n".
"X-Prototype-Version: 1.6.0.3\r\n".
"Content-type: application/x-www-form-urlencoded; charset=UTF-8\r\n".
"User-Agent: Mozilla 4.0\r\n".
"Content-length: ".strlen($query).
"\r\nConnection: close\r\n\r\n$query";
$fp=fsockopen($host,80);
fwrite($fp,$post);
$sss="";
while($chitaem=fread($fp,4096))
$sss.= $chitaem;
//echo $sss;
$itog=trim(strstr($sss,"\r\n\r\n"));
echo '<textarea rows="6" cols="45" name="text" wrap="hard" readonly="readonly">'.$itog.'</textarea>';
?>
|
Заранее всем благодарен за любую помощь :) | |
|
|
|
|
|
|
|
для: Nigma07
(03.06.2009 в 23:58)
| |
<?php
$text='Ro cor ad exer sit, vullandrem dipit ipis nit
nostionsed dion vullaoreetum dolore dolesse quatummy
nostrud magnisi tat vulputem iustin henim vel in velent
pratie modiam quat lorero delit wismod et loreet delese
vullamet lore ectem dolortio dolobore do dunt dolore conse
tatue volenis accum velesectetue tie dolorti smodolor susci
esed doluptat, cons ent niam nonulla adit lorero eu feu
feuisit iuscili quatum alisi.';
// English в Русский
$request = "POST /translate_t?hl=ru HTTP/1.0\r\n";
$request .= "Host: translate.google.ru\r\n";
$request .= "User-Agent: Opera 7.50";
$request .= "rulez\r\n";
$request .= "Connection: keep-alive\r\n";
$request .= "Accept: */*\r\n";
$request .= "Referer: http://translate.google.com\r\n";
$posts = array (
'hl' => 'ru',
'ie' => 'windows-1251',
'oe' => 'windows-1251',
'text' => $text,
// English в Русский
'sl' => 'en',
'tl' => 'ru'
);
$postValues="";
foreach( $posts AS $name => $value ) $postValues .= urlencode($name) . "=" . urlencode($value) . '&';
$lenght = strlen($postValues);
$request2 = $request."Content-Type: application/x-www-form-urlencoded\r\n";
$request2 .= "Content-Length: ".$lenght."\r\n";
$request2 .= "\r\n";
$request2 .= $postValues;
$fp = fsockopen("translate.google.ru",80, $errno, $errstr, 30);
fwrite($fp, $request2);
$s = "";
while (!feof($fp)) $s .=fgets($fp, 1024);
fclose($fp);
preg_match('/id=result_box dir="ltr">(.*)<\/div>/iU',$s, $matches);
print_r ($matches[1]);
?>
|
Будешь много раз его использовать, получишь БАН от гугла на 8 часов. А как это обойти я тебе не скажу))) | |
|
|
|
|
|
|
|
для: VITtek
(04.06.2009 в 10:09)
| | Огромное спасибо!
Написал ЛП, но не пойму, дошло или нет? | |
|
|
|