Disclosure Statement: This site contains affiliate links, which means that I may receive a commission if you make a purchase using these links. As an eBay Partner, I earn from qualifying purchases.
If you find these projects useful please consider becoming a sponsor with Patreon, GitHub or Liberapay.

RetrieveHTML manual call

Post Reply
User avatar
Uefi1
Posts: 43
Joined: Tue Aug 24, 2021 1:58 pm

RetrieveHTML manual call

Post by Uefi1 »

Hail, Trying to call chromium1.RetrieveHTML; manually but nothing comes out =(((

Code: Select all

procedure th.Chromium1TextResultAvailable(Sender: TObject;

  const aText: ustring);
begin
form1.Memo1.Lines.Add('TextResultAvailable YES'); // NOT WORK :=(
end;

procedure th.Chromium1LoadEnd(Sender: TObject;
  const browser: ICefBrowser; const frame: ICefFrame;
  httpStatusCode: Integer);
var
TempVisitor:ICefStringVisitor;
begin
form1.Memo1.Lines.Add('LoadEnd YES');
  if (Frame <> nil) and Frame.IsValid then
    try
      TempVisitor := TCustomCefStringVisitor.Create(nil);
      Frame.GetSource(TempVisitor);
    finally
      TempVisitor := nil;
end;
end;

procedure th.Execute;
var
chrom:TChromium;
begin
inherited;
if work then begin
chrom:=TChromium.Create(nil);
chrom.OnLoadEnd:=Chromium1LoadEnd;
chrom.OnTextResultAvailable:=Chromium1TextResultAvailable;
chrom.DefaultUrl:='https://';
if not chrom.Initialized then chrom.CreateBrowser(nil,'');
if chrom.Initialized=false then
chrom.Initialized
User avatar
salvadordf
Posts: 4580
Joined: Thu Feb 02, 2017 12:24 pm
Location: Spain
Contact:

Re: RetrieveHTML manual call

Post by salvadordf »

That code is using a TCustomCefStringVisitor directly instead of calling TChromiumCore.RetrieveHTML.

TCustomCefStringVisitor requires a different initialization and that's why it's not working.

Call TChromiumCore.RetrieveHTML intead of using TCustomCefStringVisitor
Post Reply