Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вытащить текст из html [D7, WinXP]


lmz ©   (2005-12-17 20:22:00) 

Как вытащить данные(текст) из html-страницы и записать их в файл?
На html-странице таблица, в которой записан текст в три столбца...
на счёт записи понятно, а вот на счёт изъятия текста, вот с этим вопрос?
явно это делается через теги(они используются как разделители), но похоже что страницу писали не ручками, а с помощью какой-то сторонней проги(мусора слишком много), догадываюсь что с помощью FrontPage...


palva   (2005-12-19 11:44:00) [1]

Вот здесь много примеров
http://podgoretsky.com/ftp/Docs/Delphi/Tenser/9/WebBrowser.doc


DesWind   (2005-12-19 11:33:00) [2]

Есть еще вариант


function GetTextFromBrowser(Source: TWebBrowser; Dest: TStringList): HRESULT;
var
PersistStream: IPersistStreamInit;
TextStream: TMemoryStream;
Stream: IStream;

begin
PersistStream:=Source.Document as IPersistStreamInit;
TextStream:=TMemoryStream.Create;
try
 if PersistStream=nil then
  begin
   raise EAccessViolation.Create(strDocNotLoad);
  end;
 Stream:=TStreamAdapter.Create(TextStream, soReference) as IStream;
 result:=PersistStream.Save(Stream, true);
  Dest.LoadFromStream(TextStream);
finally
 TextStream.Free;
end;
end;


TUser   (2005-12-19 11:08:00) [3]

Ну, примерно

WebBrowser1.Navigate2 ('address');
(WebBrowser1 as IHTMLDocument2).document.body. + справка по JavaScript, например .anchors[12].innerTEXT - это текст в анкоре номер 12.


lmz   (2005-12-19 03:14:00) [4]


> palva ©

можно примерчик кода?
Please!!!!


palva   (2005-12-19 01:13:00) [5]

Страницу нужно загрузить в TWebBrowser, а потом через объект document залезать внутрь.


lmz   (2005-12-19 00:26:00) [6]


> Вот отсюда и надо плясать.

а можно показать как плясать то :)


mfender   (2005-12-18 15:08:00) [7]


> lmz ©   (18.12.05 13:24) [3]
> написать парсер не проблема, но страница очень загрязнена.

Как бы не была загрязнена страница, у неё есть DOM - документ и по полкам разложенное его содержимое. Вот отсюда и надо плясать.


lmz   (2005-12-18 13:24:00) [8]

написать парсер не проблема, но страница очень загрязнена...


TUser   (2005-12-18 12:24:00) [9]

А я бы свой парсер бы написал. Два часа работы максимум (даже для меня), а работать будет гарантированно и вне зависимости от прихотей Мелкософта. Программист - быстрее в пять раз напишет.


mfender   (2005-12-18 11:51:00) [10]

Следует использовать MSHTML.
Как этим пользоваться - см. в MSDN.


Наверх

Титульная страница Поиск, карта сайта Написать письмо