22 Stimmen

Lazarus: HTML einer Website laden

Frage von Gast | 21.03.2015 um 08:31

Ich würde gerne mit Lazarus in den HTML-Code einer Internetseite (URL ist gegeben) auslesen. Es geht mir nicht darum, das HTML in einer Browser-Komponente oder dergleichen anzuzeigen. Ich bin lediglich am Inhalt interessiert, da ich einige Informationen für mein Programm aus dem Internet benötige.

Gibt es irgend eine sehr einfache light-weight Methode, um das zu bewerkstelligen? Ungern würde ich eine der riesigen Internetbibliotheken in mein Programm einbinden, da ich wirklich nur diese eine Funktion brauche. Gerne auch eine Lösung, die plattformunabhängig ist.

AntwortenPositivNegativ
5Beste Antwort5 Stimmen

Du kannst einfach fphttpclient verwenden. Das ist Teil des fcl-web Packets und bei FreePascal und Lazarus automatisch dabei ohne irgendwelche zusätzlichen Komponenten zu installieren. Du musst einfach nur "fphttpclient" zum "uses"-Abschnitt deiner Unit hinzufügen.

Hier ist ein sehr einfaches Beispiel:

uses fphttpclient;
  
procedure TForm1.Button1Click(Sender: TObject);
var
  url, html : String;
begin
  url := 'http://www.example.com';
  html := TFPCustomHTTPClient.SimpleGet(url);
  memo1.Text := html;
end;

Hier lesen wir den HTML-Code von example.com aus und zeigen diesen in einem Memo an. Dazu nutzen wir die Klassenfunktion SimpleGet von TFPCustomHTTPClient und kommen daher mit nur einer Zeile aus.

Etwas ausführlicher geht es so:

uses fphttpclient;

procedure TForm1.Button2Click(Sender: TObject);
var
  httpclient: TFPHTTPClient;
  url, html : String;
begin

  url := 'http://www.example.com';

  httpclient := TFPHttpClient.Create(Nil);
  try
    html := httpclient.Get(url);
  finally
    httpclient.Free;
  end;

  memo1.Text := html;

end;   

Das Ergebnis ist aber in beiden Fällen identisch. Das zweite Beispiel ist zwar länger, kann aber als Basis genutzt werden, wenn man den Code noch irgendwie erweitern möchte.
22.03.2015 um 18:00

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

CSS-Stylesheets in HTML einbinden

Tutorial | 0 Kommentare

PHP: Eine E-Mail versenden

Tutorial | 0 Kommentare

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.