Ahoi und zwar lade ich automatisiert alle Bilder des Typs JPG einer
HTML-Seite runter und zwar wiefolgt:
Delphi-Quellcode:
function DownloadFile(SourceFile, DestFile: string): Boolean;
begin
try
Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0,
nil) = 0;
except
Result := False;
end;
end;
....
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
k, p: Integer;
Source, dest, ext: string;
begin
for k := 0 to WebBrowser1.OleObject.Document.Images.Length - 1 do
begin
Source := WebBrowser1.OleObject.Document.Images.Item(k).Src;
p := LastDelimiter('.', Source);
ext := UpperCase(Copy(Source, p + 1, Length(Source)));
if (ext = 'JPG') then
begin
//ShowMessage('Found!');
p := LastDelimiter('/', Source);
dest := ExtractFilePath(ParamStr(0)) + Copy(Source, p + 1, Length(Source));
DownloadFile(Source, dest);
end;
end;
end;
Dies funktioniert auch wunderbar, ich habe jedoch vor, auf meheren Seiten alle Bilder herunterzuladen er springt also nachdem er alle bilder gespeichert hat auf seite 2.
Wenn ich mich dann auf Seite2 befinde meldet er nen Fehler der in dieser Zeile stecken soll:
Source := WebBrowser1.OleObject.Document.Images.Item(k).Src;
Gibt es da etwas zu beachten? Ich leere die Variable auch bevor ich die Seite2 aufrufe...