Показать сообщение отдельно
  #2  
Старый 17.06.2010, 23:53
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,100
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

можно получить текст страницы через IdHTTP.Get.
Далее можно делать 2мя способами.
1. Использовать MSHTML - загрузить туда текст и далее искать по объектной можели.
2. попробовать написать свой простой парсер.
Код:
S  := IdHTTP.Get('www.site.ru'); // не уверен в синтаксисе - проверь.

// вырезаем список <li>...</li>
S := Copy(S,Pos('<ul class="icqList">,S) + Length('<ul class="icqList">'), Length(S));
S := Copy(S,1,Pos('</ul>',S)-1);

// Разбор номеров
Idx := Pos('<li>',S);
While Idx > 0 Do
  Begin
    // Здесь должно быть содержимое элемента списка
    Buf := Copy(S,Idx+4,Pos('</li>',S)-4-1); 

    // Удаляем обработанный кусок
    S := Copy(S,Pos('</li>',S)+5,Length(S));
    Idx := Pos('<li>',S);
  End;

может быть придется подкоректировать смещения при вычислении координат копирования - делал на глазок.
Ответить с цитированием