| 
| 
 | Вопрос # 5 650/ вопрос решён / | 
 |  Здравствуйте, уважаемые эксперты! Приветсвую вас.
 В общем проблема не проблема, нуждаюсь в доработке функции и переводе онной на delphi WinAPI.
 
 Суть в следущем:
 
 Нужен HTML-парсер, который бы брал текст между двумя тегами <pre> Нужный текст</pre> и вставлял его в lable1.caption.
 
 В принцепе решил вопрос:
 
 procedure TForm1.Button1Click(Sender: TObject); 
begin 
  NMHTTP1.Get('http://localhost/reklama.php'); 
  lable1.caption := NMHTTP1.Body 
end;Но проблема в том, что он весь боди выдирает и всталвет, и нужно сделать это всё на WinAPI,  помогите пожалуйста.
 
|  |   Вопрос задал: winner13 (статус: 1-ый класс)Вопрос отправлен: 25 сентября 2011, 14:46
 Состояние вопроса: решён, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Шарайчук Сергей Олександрович Здравствуйте, winner13!Ну так вы весь боди и парсите, попробуйте так...
 s1 адрес
 s2 тег перед текстом
 s3 текст после текста
 Приложение:Переключить в обычный режим procedure TForm1.pars(s1,s2,s3,:string);vari,n,t:integer;beginrss:=IdHTTP1.Get(s1);    i:=1;   title:='';   while (i<=length(rss)) do    begin     if pos(s2,rss)<>0 then      begin      Delete(rss,1,pos(s2,rss)+length(s2)-1);       title:=copy(rss,1,pos(s3,rss)-1);       Application.ProcessMessages();     rss:='';       end else break;       end;     inc(i); Application.ProcessMessages(); end;
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 25 сентября 2011, 15:20; участников в обсуждении: 1. 
|   | winner13 (статус: 1-ый класс), 25 сентября 2011, 15:20 [#1]:Чесно я не понял зачем нужно Application.ProcessMessages(); rss:='';
 ...
 inc(i);
 
 Application.ProcessMessages();
 
 
 И я немного не понял ответа, код не совсем то что нужно, и не на ВинАПИ, можно подробней если есть возможность.
 Не решимых проблем нет, есть неприятные для нас решения. |  28 сентября 2011, 00:57: Статус вопроса изменён на решённый (изменил автор вопроса — winner13) Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |