使用开放访问确实很难做到。
如果您想使用 AppleScript 读取 HTML 文件,那么最好的方法是使用 AppleScript 告诉 HTML 编辑器为您读取 HTML 文件。这是 AppleScript 工作的基本方式。这就是为什么“告诉”是最重要的命令。这就是为什么您只需 3 行就可以实现将 HTML 文件读入变量的目标:
tell application "BBEdit"
open (choose file)
set theHTMLSource to the text of document 1
close document 1
end tell
以下脚本扩展了上述内容,以从所选文件夹中读取任意数量的 HTML 文件。它适用于 BBEdit 9,也应该适用于 BBEdit 的免费版本,称为“TextWrangler”,可在 Mac App Store 中获得。或者,您可以相当轻松地调整此脚本以与 HyperEdit 或 TextEdit 或您喜欢使用的任何 AppleScript 感知 HTML/文本编辑器一起使用。
tell application "Finder"
set theFolder to (choose folder)
set theFiles to every file of folder theFolder
set theHTMLSourceList to {}
repeat with theFile in theFiles
if the kind of theFile is equal to "HTML document" then
set theName to the name of theFile
tell application "BBEdit"
open file (theFile as text)
set theSource to the text of document 1
copy {theName, theSource} to the end of theHTMLSourceList
close document 1
end tell
end if
end repeat
end tell
完成上述脚本后,变量“theHTMLSourceList”将填充整个 HTML 文档文件夹的名称和源代码,如下所示:
{{name of file 1, source of file 1}, {name of file 2, source of file 2}, {name of file 3, source of file 3}}
... 等等,最多可包含任意数量的文件。但当然,您可以让脚本以您喜欢的任何方式将 HTML 源返回给您。关键是AppleScript 感知HTML 编辑器既可以读取HTML 又可以设置AppleScript 变量,因此您不必在微小的AppleScript 中编写(以及调试和维护)您自己的HTML 阅读器。