Enregistrer une page Web au format HTML ou MHT à l'aide de Delphi

Lorsque vous travaillez avec Delphi, le TWebBrowser composant vous permet de créer un Application de navigation Web ou pour ajouter des fonctionnalités de navigation Internet, de fichiers et de réseau, de visualisation de documents et de téléchargement de données à vos applications.

Comment enregistrer une page Web à partir de TWebBrowser

Lorsque vous utilisez Internet Explorer, vous êtes autorisé à afficher le code HTML source d'une page et à enregistrer cette page en tant que fichier sur votre lecteur local. Si vous consultez une page que vous souhaitez conserver, allez dans Fichier / Enregistrer sous... élément du menu. Dans la boîte de dialogue qui s'ouvre, plusieurs types de fichiers vous sont proposés. L'enregistrement de la page sous un autre type de fichier affectera la façon dont la page est enregistrée.

Le composant TWebBrowser (situé sur la page "Internet" de la palette de composants) donne accès à la fonctionnalité du navigateur Web depuis votre Applications Delphi. En général, vous souhaiterez activer l'enregistrement d'une page Web affichée dans un WebBrowser en tant que fichier HTML sur un disque.

instagram viewer

Enregistrement d'une page Web au format HTML brut

Si vous souhaitez uniquement enregistrer une page Web au format HTML brut, vous devez sélectionner "Page Web, HTML uniquement (* .htm, * .html)". Il enregistrera simplement le code HTML source de la page actuelle sur votre lecteur intact. Cette action n'enregistrera PAS les graphiques de la page ou de tout autre fichier utilisé dans la page, ce qui signifie que si vous chargez le fichier à partir du disque local, vous verrez des liens d'image rompus.

Voici comment enregistrer une page Web au format HTML brut à l'aide du code Delphi:

Exemple d'utilisation:

Remarques

  • Les interfaces IPersistStreamInit et IStream sont déclarées à l'intérieur de l'unité ActiveX.
  • La page Web est enregistrée en tant que HTML brut dans le fichier WebBrowser1.html sur le dossier racine du lecteur C.

MHT: archives Web, fichier unique

Lorsque vous enregistrez une page Web en tant que «archive Web, fichier unique (* .mht)», le document Web est enregistré au format MHTML (Multipurpose Internet Mail Extension HTML) avec une extension de fichier .mht. Tous les liens relatifs de la page Web sont remappés et le contenu incorporé est inclus dans le fichier .mht, plutôt que d'être enregistré dans un dossier séparé (comme c'est le cas avec "Page Web, complète (* .htm, * .html) ").

MHTML vous permet d'envoyer et de recevoir des pages Web et d'autres documents HTML à l'aide de programmes de messagerie tels que Microsoft Outlook et Microsoft Outlook Express; ou même vos solutions d'envoi d'e-mails Delphi personnalisées. MHTML vous permet d'incorporer des images directement dans le corps de vos messages électroniques plutôt que de les joindre au message.

Voici comment enregistrer une page Web en tant que fichier unique (format MHT) à l'aide du code Delphi:

Exemple d'utilisation:

Remarque

  • La classe _Stream est définie dans l'unité ADODB_TLB que vous avez probablement déjà créée. Le code des interfaces IMessage et IConfiguration de la bibliothèque cdosys.dll. CDO signifie Collaboration Data Objects - bibliothèques d'objets conçues pour activer la messagerie SMTP.

Le CDO_TLB est une unité générée automatiquement par Delphi. Pour le créer, dans le menu principal, sélectionnez "Import Type Library", sélectionnez "C: \ WINDOWS \ system32 \ cdosys.dll" puis cliquez sur le bouton "Créer une unité".

Pas de TWebBrowser

Vous pouvez réécrire la procédure WB_SaveAs_MHT pour accepter une chaîne URL (pas TWebBrowser) pour pouvoir enregistrer directement une page Web - pas besoin d'utiliser le composant WebBrowser. L'URL de WebBrowser est récupérée à l'aide de la propriété WB.LocationURL.

instagram story viewer