Здрасте, есть WebBrowser1, в него загружаю, например, страничку:
http://www.bet-at-home.com/start.aspx
После загрузки странички слева в меню (на сайте) легко можно увидеть, например: "Хоккей с шайбой". Но после витаскивания хтмл-кода с WebBrowser1 текста: "Хоккей с шайбой" - нет. Там просто идет работа с явой.
Так вот, как мне, например, вытянуть этот текст (например "Хоккей с шайбой") с WebBrowser1. Т.е. надо всесь текст закинуть, например, в Memo1. Или надо как-то бороться с явой?
Вот код:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdHTTP, IdCookieManager, IdMultipartFormData,
ComCtrls, OleCtrls, SHDocVw, ActiveX, HTTPApp, HTTPProd;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
IdHTTP1: TIdHTTP;
IdCookieManager1: TIdCookieManager;
RichEdit1: TRichEdit;
WebBrowser1: TWebBrowser;
Button1: TButton;
Button2: TButton;
PageProducer1: TPageProducer;
procedure BitBtn1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
procedure SaveHTMLSourceToFile(const FileName: string; WB: TWebBrowser);
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
webbrowser1.Navigate('http://www.bet-at-home.com/start.aspx');
end;
procedure TForm1.SaveHTMLSourceToFile(const FileName: string;
WB: TWebBrowser);
var
PersistStream: IPersistStreamInit;
FileStream: TFileStream;
Stream: IStream;
SaveResult: HRESULT;
begin
PersistStream := WB.Document as IPersistStreamInit;
FileStream := TFileStream.Create(FileName, fmCreate);
try
Stream := TStreamAdapter.Create(FileStream, soReference) as IStream;
SaveResult := PersistStream.Save(Stream, True);
if FAILED(SaveResult) then
MessageBox(Handle, 'Fail to save HTML source', 'Error', 0);
finally
FileStream.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SaveHTMLSourceToFile('c:/1.txt', WebBrowser1);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
RichEdit1.Lines.Add(WebBrowser1.StatusText)
end;
end.
Admin: Учимся пользоваться тегами при оформлении кода!