Sans utiliser de script GUI Comment puis-je utiliser AppleScript pour dire à Safari pour enregistrer la page actuelle du navigateur dans un fichier au format webarchive ? L'opération suivante produit une erreur "The document “...” could not be exported as “foo.webarchive”
(où "..." est le titre de la page web en cours, quel qu'il soit) :
set the_filepath to "/tmp/foo.webarchive"
tell application "Safari"
activate
save document 1 in the_filepath
end tell
J'ai essayé des variantes, comme des extensions de nom de fichier différentes (par exemple , .html
) pour voir si quelque chose fonctionne, mais une erreur se produit toujours. J'ai essayé différentes façons de spécifier le nom du fichier, mais cela produit également des erreurs (d'un autre type). J'ai essayé d'utiliser save ... as ".webarchive"
au lieu du simple save
ci-dessus, mais cela produit une erreur différente : "le document 1 ne comprend pas le message d'enregistrement".
Le dictionnaire AppleScript pour Safari 11 contient cette description :
save v : Save a document.
save specifier : The document(s) or window(s) to save.
[in file] : The file in which to save the document.
[as saveable file format] : The file format to use.
Cela implique qu'il devrait être possible de sauvegarder la page web en cours dans un format spécifique compris par Safari (comme, espérons-le, webarchive), et que je n'ai tout simplement pas trouvé la bonne syntaxe.