TStringList *Info = new TStringList();
TStringStream *Response = new TStringStream("");
Info->Add("from=Rus");
Info->Add("to=Lat");
Info->Add("text=" + Memo1->Text);
IdHTTP1->Post("http://translate.tut.ua/", Info, Response);
Memo2->Text = (Response->DataString);
работа с компонентом idHttp (интернет переводчик)
есть сайт http://translate.tut.ua/, где и будет производится перевод с русского на латышский.
посмотрел какие параметры у запроса и написал код.
Код:
в ответе вместо ожидаемого кода страницы http://translate.tut.ua/result/, я получил огромный код где нету перевода.
кто работал с этим, может подскажет в чем проблема?
Вернулся код
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<link rel="stylesheet" type="text/css" href="http://lib.tut.ua/css/styles.css">
<link rel="stylesheet" type="text/css" href="/css/styles.css">
<script src="/js/translate.js" type="text/javascript"></script>
</head>
<body>
<div class="clear"></div>
<table width="100%">
<tr>
<td>
<div class="inside">
<div style="color:green; font-size: 15px;margin-bottom:0px;"><strong>Результат перевода</strong></div>
</div>
<div class="trform">
<div class="inside">
<table width="100%">
<tr>
<td valign="top">
<textarea class="copybook" id='result' style="font-weight: bold;">cepure</textarea>
</td>
<td valign="top" width="30">
<br>
</td>
</tr>
</table>
</div>
</div>
</td>
</tr>
</table>
</body>
</html><!-- 0,17609 -->
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<link rel="stylesheet" type="text/css" href="http://lib.tut.ua/css/styles.css">
<link rel="stylesheet" type="text/css" href="/css/styles.css">
<script src="/js/translate.js" type="text/javascript"></script>
</head>
<body>
<div class="clear"></div>
<table width="100%">
<tr>
<td>
<div class="inside">
<div style="color:green; font-size: 15px;margin-bottom:0px;"><strong>Результат перевода</strong></div>
</div>
<div class="trform">
<div class="inside">
<table width="100%">
<tr>
<td valign="top">
<textarea class="copybook" id='result' style="font-weight: bold;">cepure</textarea>
</td>
<td valign="top" width="30">
<br>
</td>
</tr>
</table>
</div>
</div>
</td>
</tr>
</table>
</body>
</html><!-- 0,17609 -->
Из этой строки надо вытищить перевод. каким образом это лучше сделать?
Код:
<textarea class="copybook" id='result' style="font-weight: bold;">cepure</textarea>
Цитата:
как вытащить нужный результат из строки
AnsiString t;
t.SubString(t.Pos(Каккой-нибудь редкий тег, который определяет точное положение перевода)+n,сколько в переводе букв, или разность t.Pos() с редкими тегами+m) и так до победного конца.;)
Парсить AnsiString примерно так.
Можно, конечно, запихнуть это все в IHTMLDocument и работать как белый человек (хотя тоже, то еще удовольствие:rolleyes:).
Цитата: FunTime
С этим разобрался и возник ещё один вопрос...
если вы задаете вопрос на форуме - будьте добры приводить найденное решение.