Speichern Sie eine Webseite mit Delphi als HTML oder MHT

click fraud protection

Bei der Arbeit mit Delphi wird die TWebBrowser Mit der Komponente können Sie eine benutzerdefinierte erstellen Webbrowser-Anwendung oder um Ihren Anwendungen Funktionen zum Surfen im Internet, in Dateien und im Netzwerk, zum Anzeigen von Dokumenten und zum Herunterladen von Daten hinzuzufügen.

So speichern Sie eine Webseite in TWebBrowser

Wenn Sie Internet Explorer verwenden, können Sie den Quell-HTML-Code einer Seite anzeigen und diese Seite als Datei auf Ihrem lokalen Laufwerk speichern. Wenn Sie eine Seite anzeigen, die Sie behalten möchten, gehen Sie zu Datei / Speichern unter... Menüpunkt. In dem sich öffnenden Dialogfeld werden verschiedene Dateitypen angeboten. Das Speichern der Seite als anderer Dateityp wirkt sich darauf aus, wie die Seite gespeichert wird.

Die TWebBrowser-Komponente (auf der Seite "Internet" der Komponentenpalette) bietet von Ihrem aus Zugriff auf die Webbrowser-Funktionen Delphi-Anwendungen. Im Allgemeinen möchten Sie das Speichern einer in einem WebBrowser angezeigten Webseite als HTML-Datei auf einer Festplatte aktivieren.

instagram viewer

Speichern einer Webseite als Roh-HTML

Wenn Sie eine Webseite nur als Roh-HTML speichern möchten, wählen Sie "Webseite, nur HTML (* .htm, * .html)". Der Quell-HTML-Code der aktuellen Seite wird einfach intakt auf Ihrem Laufwerk gespeichert. Diese Aktion speichert NICHT die Grafiken von der Seite oder anderen auf der Seite verwendeten Dateien. Wenn Sie die Datei von der lokalen Festplatte zurückladen, werden fehlerhafte Bildlinks angezeigt.

So speichern Sie eine Webseite mit Delphi-Code als Roh-HTML:

Anwendungsbeispiel:

Anmerkungen

  • Die Schnittstellen IPersistStreamInit und IStream werden in der ActiveX-Einheit deklariert.
  • Die Webseite wird als unformatiertes HTML in der Datei WebBrowser1.html im Stammordner des Laufwerks C gespeichert.

MHT: Webarchiv, einzelne Datei

Wenn Sie eine Webseite als "Webarchiv, einzelne Datei (* .mht)" speichern, wird das Webdokument im MHTML-Format (Multipurpose Internet Mail Extension HTML) mit der Dateierweiterung .mht gespeichert. Alle relativen Links auf der Webseite werden neu zugeordnet und der eingebettete Inhalt wird in die .mht-Datei aufgenommen. anstatt in einem separaten Ordner gespeichert zu werden (wie es bei "Webseite, vollständig (* .htm, * .html) ").

Mit MHTML können Sie Webseiten und andere HTML-Dokumente mit E-Mail-Programmen wie Microsoft Outlook und Microsoft Outlook Express senden und empfangen. oder sogar Ihre benutzerdefinierten Delphi-E-Mail-Versandlösungen. Mit MHTML können Sie Bilder direkt in den Text Ihrer E-Mail-Nachrichten einbetten, anstatt sie an die Nachricht anzuhängen.

So speichern Sie eine Webseite als einzelne Datei (MHT-Format) mit Delphi-Code:

Beispielnutzung:

Hinweis

  • Die _Stream-Klasse ist in der ADODB_TLB-Einheit definiert, die Sie wahrscheinlich bereits erstellt haben. Die Schnittstellen IMessage und IConfiguration enthalten Code aus der Bibliothek cdosys.dll. CDO steht für Collaboration Data Objects - Objektbibliotheken, die SMTP-Messaging ermöglichen.

Der CDO_TLB ist eine automatisch generierte Einheit von Delphi. Um es zu erstellen, wählen Sie im Hauptmenü "Import Type Library", wählen Sie "C: \ WINDOWS \ system32 \ cdosys.dll" und klicken Sie dann auf die Schaltfläche "Create unit".

Kein TWebBrowser

Sie können die Prozedur WB_SaveAs_MHT neu schreiben, um eine URL-Zeichenfolge (nicht TWebBrowser) zu akzeptieren, damit eine Webseite direkt gespeichert werden kann - ohne die WebBrowser-Komponente verwenden zu müssen. Die URL von WebBrowser wird mit der Eigenschaft WB.LocationURL abgerufen.

instagram story viewer