Тема: Як отримати html код сторінки за допомогою TWebBrowser ?

Власне треба отримати html код сторінки, використовуючи компонент TWebBrowser

Я звісно подався в google, знайшов приклади, але жоден із них не працює..

Код 1
Document := WebBrowser1.Document as IHtmlDocument2;
        if Document <>  nil then
          Memo2.Text := (Document.all.Item(NULL, 0) as IHTMLElement).OuterHTML;
Код 2
procedure GetHtmlCode(WebBrowser: TWebBrowser; FileName: string);
var
 htmlDoc: IHtmlDocument2;
 PersistFile: IPersistFile;
begin
 htmlDoc := WebBrowser.document as IHtmlDocument2;
 PersistFile := HTMLDoc as IPersistFile;
 PersistFile.save('C:\code.txt', true);

end;

В першому випадку, результатом є NULL(Delphi: nil)
А у другому помилка при збереженні файлу:

PersistFile.save('C:\code.txt', true);
Прихований текст

http://croper.ru/images/20140410Kl8ygzrVhbcDmv4w_oe7Z5_large.jpeg?70477

Як ще можна зберегти або хоча б отримати код сторінки за допомогою TWebBrowser.
P.S: про Indy клієнти і тд - знаю, але вони не підходять.

2

Re: Як отримати html код сторінки за допомогою TWebBrowser ?

Перший код у мене чудово працює, але треба дочекатися повного завантаження сторінки.

3

Re: Як отримати html код сторінки за допомогою TWebBrowser ?

Перевірте властивість .Busy і тоді вже забирайте сторінку

Re: Як отримати html код сторінки за допомогою TWebBrowser ?

Torbins написав:

Перший код у мене чудово працює, але треба дочекатися повного завантаження сторінки.

У мене нічого не записується у мемо, наівть після повного завантаження сторінки (

Re: Як отримати html код сторінки за допомогою TWebBrowser ?

UPD:

Якщо зробити так:

Memo1.Text := Document.body.innerHTML;

тоді все ок.

Подякували: Torbins1