Translate.google.ru выдает сатану !?!? o_o

Тема в разделе "PHP", создана пользователем Inviseble_Demon, 13 фев 2012.

Модераторы: latteo
  1. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    351
    {"sentences":[{"trans":"R\u0406RR\u0456ReR\u0405R°°\u6570P","orig":"\u0420\u0406\u0420°\u0420\u0456\u0420\u0451\u0420\u0405\u0420°\u0420\u2116","translit":"RНRRнReR\u1E90R°°shщ P","src_translit":"RНR°RнRe\u0308R\u1E90R°R\u2116"}],"src":"ru","server_time":8}


    Это что мать её за хрень !?
    Не я понимаю что json но в нем... Вообще понять не могу что это за криптография :D
    Может кто в курсе ?
     
  2. ywitodenasuby

    ywitodenasuby Постоялец

    Заблокирован
    Регистр.:
    31 янв 2012
    Сообщения:
    65
    Симпатии:
    21
    Вы парсите гугл переводчик текстов?
     
  3. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    351
    не исключено :-]
     
  4. ywitodenasuby

    ywitodenasuby Постоялец

    Заблокирован
    Регистр.:
    31 янв 2012
    Сообщения:
    65
    Симпатии:
    21
    Ну дело в том что если вы на автомате хотите переводить тексты, то я могу подсказать на языке php или c sharp, а хрень та кстати называется юникод
     
  5. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    351
    o_O
    юникод...
    В рот мне чих пых...
    Как привести к нормальному читабельному виду ?
     
  6. ywitodenasuby

    ywitodenasuby Постоялец

    Заблокирован
    Регистр.:
    31 янв 2012
    Сообщения:
    65
    Симпатии:
    21
    Попробуйте так

    Код:
    $agent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)" ;
      $header [] = "Accept: text/html;" ;
      $header [] = "Accept_charset: utf-8";
      $header [] = "Accept_encoding: identity";
      $header [] = "Accept_language: en-us";
      $header [] = "Connection: Keep-Alive";
      $ch = curl_init ();
     
     
      $url = 'http://translate.google.com/translate_a/t?client=t&text='.urlencode("красный").'&sl=ru&tl=en';
      curl_setopt ( $ch , CURLOPT_URL , $url );
      curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , 1 );
      curl_setopt ( $ch , CURLOPT_VERBOSE , 1 );
      curl_setopt ( $ch , CURLOPT_USERAGENT , $agent );
      curl_setopt ( $ch , CURLOPT_HTTPHEADER , $header );
      curl_setopt ( $ch , CURLOPT_FOLLOWLOCATION , 1 );
      $tmp = curl_exec ( $ch );
      curl_close ( $ch );
     
     
      if(preg_match('/\[\[\["(.*?)",/', $tmp, $match))
      {
        echo "<br /><b>".$match[1]."</b><br />";
      }
     
    Inviseble_Demon нравится это.
  7. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    351
    ywitodenasuby
    Спасибо конечно но у меня меня переводчик и так работает.
    Дело в том что он редко но цука метко выдает подобное вместо нормального текста.
    И именно его нужно распознать.
    А то что исходниками кидаетесь это похвально, уважаю неленящихся.
    Но тут ты неверно понял потребности.

    Нужно просто понять что это и привести к нормальному виду.
    С тем что это разобрались, теперь как это в норм вид привести...
    Я уже почти 30 часов не сплю бошка не варит (((

    Не спасает...
    PHP:
    $s preg_replace('/\\\u0([0-9a-fA-F]{3})/''&#x\1;'$s);
    $s html_entity_decode($sENT_NOQUOTES,'utf-8');
     
  8. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    351
    +++ up.... Неужели нет ни у кого идей ? :(
     
  9. Vladimir-AWM

    Vladimir-AWM Писатель

    Регистр.:
    11 фев 2012
    Сообщения:
    5
    Симпатии:
    0
    Пример бы Ваш, где можно было посмотреть и потестить этот ответ.
     
  10. ywitodenasuby

    ywitodenasuby Постоялец

    Заблокирован
    Регистр.:
    31 янв 2012
    Сообщения:
    65
    Симпатии:
    21
    Мне кажется, что ненужно расшифровывать ответ, а нужно смотреть на текст, который передается для перевода. Например, если такое предложение, "Красный" , то гугл вернет нормальный ответ, а если ". Красный" то ответ уже будет другим, поетому нужно смотреть на передаваемый текст, что бы он всегда был правильным для гугл. Попробуйте сделать что то подобное перед тем как отправлять на перевод и я думаю что все станет понятно.

    Код:
    thisrow = thisrow.Replace("«", ""); 
    thisrow = thisrow.Replace("»", ""); 
    thisrow = thisrow.Replace("—", "-"); 
    thisrow = thisrow.Replace(" — ", "-");
    thisrow = thisrow.Replace(" - ", "-");
    thisrow = thisrow.Replace("...", "");
    thisrow = thisrow.Replace("..", ""); 
    thisrow = thisrow.Replace(":", ""); 
    thisrow = thisrow.Replace("\"", ""); 
    thisrow = thisrow.Replace(",", ""); 
    thisrow = thisrow.Replace("!", ""); 
    thisrow = thisrow.Replace(";", ""); 
    thisrow = thisrow.Replace("%", ""); 
    thisrow = thisrow.Replace("?", ""); 
    thisrow = thisrow.Replace("*", ""); 
    thisrow = thisrow.Replace("(", ""); 
    thisrow = thisrow.Replace(")", ""); 
    thisrow = thisrow.Replace("\\", ""); 
    thisrow = thisrow.Replace("/", ""); 
    thisrow = thisrow.Replace("=", ""); 
    thisrow = thisrow.Replace("'", ""); 
    thisrow = thisrow.Replace("&", ""); 
    thisrow = thisrow.Replace("^", ""); 
    thisrow = thisrow.Replace("$", ""); 
    thisrow = thisrow.Replace("#", ""); 
    thisrow = thisrow.Replace("@", ""); 
    thisrow = thisrow.Replace("~", ""); 
    thisrow = thisrow.Replace("`", ""); 
    thisrow = thisrow.Replace(". ", " ");
    thisrow = thisrow.Replace(".", " "); 
    thisrow = thisrow.Replace("  ", " ");