Sous macOS, je souhaite convertir des fichiers HTML contenant des images référencées sur la ligne de commande / par programme archives Web .
Étant donné un exemple de fichier sample.html
contenant:
<html><body>
<h1>File with resource</h1>
<p>This file shows text and references an image.</p>
<img src="sample.jpg" />
</body></html>
et une image sample.jpg
dans le même répertoire, je peux voir le fichier html dans n’importe quel navigateur et le rendre avec l’image. Pour convertir en webarchive j'ai essayé:
textutil -convert webarchive sample.html
mais le résultat sample.webarchive
ne pas, lorsqu’il est ouvert dans Safari, restituer l’image - bien contient il (voir commentaires).
Comment puis-je faire la conversion à partir de la ligne de commande correctement, de sorte que le résultat contienne et rend l'image? Après tout, c'est à quoi servent les archives Web!
command-line
file-conversion
html
safari
halloleo
la source
la source
sample.html
dans Safari, créez la Webarchive à partir de là, puis déplacez les deux fichiers et ouvrez l’archive dans Safari?plutil -p WEBARCHIVE
). Je n'ai cependant pas examiné les différences.plutil
(Je savais que les archives Web utilisaient laplist
format, mais ne pense pas à les analyser avecplutil
.Enquêtera plus en détail.Réponses:
Utilisez l'outil
webarchiver
(que vous pouvez installer viabrew install webarchiver
):La Webarchive produite contient l'image et Safari affiche l'image quand il affiche la Webarchive.
la source
Je pense que la ligne de commande n'a pas conscience de l'inclusion d'une image.
J'ai testé une simple page Web avec image + texte et l'ai ouverte avec Safari.
Si vous choisissez Fichier - & gt; Enregistrer sous .. 'Webarchive' vous pouvez voir dans la Webarchive créée que l'image est ajoutée à la fin du fichier.
Il est évident que Safari utilise une fonction interne Swift / Objective-C pour implémenter l’image.
Si vous choisissez d’obtenir le code HTML et d’avoir l’image comme référence, elle semble ignorer l’image et ne produire que le texte (via textutil).
Je ne m'appuierais pas sur les archives Web lors du téléchargement de pages Web - utilisez plutôt wget ou curl ou des grattoirs comme scrapy / beautifulSoup et téléchargez-les.
Je sais qu’il est pratique d’avoir un fichier, mais ce n’est pas la meilleure façon de sauvegarder des images, ce qui rend difficile leur extraction par la suite.
la source
textutil
ne peut pas créer une archive Web appropriée - du moins pas comment je l'appelle. Je suis après un outil de travail / procédure pour la ligne de commande faire exactement cela.