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

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

Как получить исходник страницы? [D7, Win95/98]


mrGrey ©   (2004-07-18 12:57:00) 

Люди добрые, хелп плиз!!!!
Как получить в TStrings исходник HTML-страницы (текст)?
Заранее спасибо.


Piter   (2004-07-28 12:52:00) [1]

Скив   (18.07.04 14:29) [2]
VID ©   (18.07.04 14:36) [3]

а как вы догадываетесь, что хотел спросить автор? Например, как вот вы сейчас догадались, что речь вообще шла о WebBrowser?


Лев Ландау   (2004-07-28 08:23:00) [2]

Грубо говоря исходник мы изменили (тот, который был сохранен в строковой переменной), как его загрузить (сгенерировать) в  WebBrowser-ре....?!
----
з.ы. Всем ответившим спасибо!


mrGrey   (2004-07-18 14:54:00) [3]

Аграмадное спасибо всем. Попробую все.


Скив   (2004-07-18 14:39:00) [4]

я быстрее нашёл ;)
действительно много проблем имел ;)
и вообще если вы ещё используете webbrowser.
Ставьте Embeddedwb.
http://www.euromind.com/iedelphi/embeddedwb.htm
и снимите разом ОЧЕНЬ много проблем


VID   (2004-07-18 14:36:00) [5]

//сохранить исходник страницы в файл
function WB_SaveHTMLCode(WebBrowser: TWebBrowser; const FileName: TFileName): Boolean;
var
 ps: IPersistStreamInit;
 fs: TFileStream;
 sa: IStream;
begin
 Result := False;
 IF WebBrowser.Document = nil then exit;
 ps := WebBrowser.Document as IPersistStreamInit;
 fs := TFileStream.Create(FileName, fmCreate);
 try
   sa := TStreamAdapter.Create(fs, soReference) as IStream;
   Result := Succeeded(ps.Save(sa, True));
 finally
   fs.Free;
 end;
end;

//загрузить исходник страницы  в Strings
function WB_GetHTMLCode(WebBrowser: TWebBrowser; ACode: TStrings): Boolean;
var
 ps: IPersistStreamInit;
 ss: TStringStream;
 sa: IStream;
 s: string;
begin
 ps := WebBrowser.Document as IPersistStreamInit;
 s := '';
 ss := TStringStream.Create(s);
 try
   sa := TStreamAdapter.Create(ss, soReference) as IStream;
   Result := Succeeded(ps.Save(sa, True));
   if Result then ACode.Add(ss.Datastring);
 finally
   ss.Free;
 end;
end;


VID   (2004-07-18 14:36:00) [6]

Скив   (18.07.04 14:28) [1]
Весело получилось :)


Скив   (2004-07-18 14:29:00) [7]

Если embeddedwb, то просто embeddedwb1.savetostrings


Скив   (2004-07-18 14:28:00) [8]

смотря что используешь?
если стандартный webbrowser, то вот:


uses
ActiveX;

function WB_SaveHTMLCode(WebBrowser: TWebBrowser; const FileName: TFileName): Boolean;
var
ps: IPersistStreamInit;
fs: TFileStream;
sa: IStream;
begin
ps := WebBrowser.Document as IPersistStreamInit;
fs := TFileStream.Create(FileName, fmCreate);
try
sa := TStreamAdapter.Create(fs, soReference) as IStream;
Result := Succeeded(ps.Save(sa, True));
finally
fs.Free;
end;
end;

function WB_GetHTMLCode(WebBrowser: TWebBrowser; ACode: TStrings): Boolean;
var
ps: IPersistStreamInit;
ss: TStringStream;
sa: IStream;
s: string;
begin
ps := WebBrowser.Document as IPersistStreamInit;
s := '';
ss := TStringStream.Create(s);
try
sa := TStreamAdapter.Create(ss, soReference) as IStream;
Result := Succeeded(ps.Save(sa, True));
if Result then ACode.Add(ss.Datastring);
finally
ss.Free;
end;
end;


Наверх

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