需要 AppleScript 从网站获取日期
Need AppleScript to get date from website
我需要一些可以访问网站 (https://www.time.gov/) 和 return 日期的 AppleScript 代码。我几乎没有编写 AppleScript 代码的经验,并且很难弄清楚如何去做。
一点上下文:AppleScript 代码将在 Excel 工作簿中使用,在 VBA 代码中。 AppleScript 代码被分配给一个 String 变量,然后被执行。这是一个简单的例子,说明它是如何工作的。
Function FileExistsOnMac(Filestr As String) As Boolean
Dim ScriptToCheckFile As String
ScriptToCheckFile = "tell application " & Chr(34) & "System Events" & Chr(34) & _
" to return (exists disk item " & Chr(34) & Filestr & Chr(34) & ") and class of disk item " & _
Chr(34) & Filestr & Chr(34) & " = file "
FileExistsOnMac = MacScript(ScriptToCheckFile)
End Function
在我的例子中,我将函数的类型设为字符串(或者可能是日期),并且它将 return AppleScript 代码 return 从网站编辑的日期。如果有人能告诉我 AppleScript 代码需要什么,将不胜感激。
抓取(即通过读取网站的文本或源代码)不是获取日期和时间信息的理想方法,您选择的网站特别糟糕,因为它通过 JavaScript 持续写入和更新页面内容,因此页面的实际源代码实际上不包含任何可读的日期或时间信息。
从 Internet 检索时间的更传统方法是从时间服务器进行。 time.gov
在 nist.time.gov
有一个,您可以使用以下 bash shell 命令请求日期和时间:
cat </dev/tcp/time.nist.gov/13
其中 return 是这样的:
58641 19-06-07 06:19:14 50 0 0 800.5 UTC(NIST) *
第二个和第三个字段是你想要的,分别代表日期和时间。我们可以使用 awk
:
稍微清理一下
cat </dev/tcp/time.nist.gov/13 | awk 'length([=12=])>0 {print 20,}'
其中 return 个:
2019-06-07 06:19:14
由于您特别请求 AppleScript 来执行此操作,这将 return 向您提供上述日期和时间:
do shell script "cat </dev/tcp/time.nist.gov/13 | awk 'length([=14=])>0 {print 20,}'"
这将 return 给你日期:
do shell script "cat </dev/tcp/time.nist.gov/13 | awk 'length([=15=])>0 {print 20}'"
我需要一些可以访问网站 (https://www.time.gov/) 和 return 日期的 AppleScript 代码。我几乎没有编写 AppleScript 代码的经验,并且很难弄清楚如何去做。
一点上下文:AppleScript 代码将在 Excel 工作簿中使用,在 VBA 代码中。 AppleScript 代码被分配给一个 String 变量,然后被执行。这是一个简单的例子,说明它是如何工作的。
Function FileExistsOnMac(Filestr As String) As Boolean
Dim ScriptToCheckFile As String
ScriptToCheckFile = "tell application " & Chr(34) & "System Events" & Chr(34) & _
" to return (exists disk item " & Chr(34) & Filestr & Chr(34) & ") and class of disk item " & _
Chr(34) & Filestr & Chr(34) & " = file "
FileExistsOnMac = MacScript(ScriptToCheckFile)
End Function
在我的例子中,我将函数的类型设为字符串(或者可能是日期),并且它将 return AppleScript 代码 return 从网站编辑的日期。如果有人能告诉我 AppleScript 代码需要什么,将不胜感激。
抓取(即通过读取网站的文本或源代码)不是获取日期和时间信息的理想方法,您选择的网站特别糟糕,因为它通过 JavaScript 持续写入和更新页面内容,因此页面的实际源代码实际上不包含任何可读的日期或时间信息。
从 Internet 检索时间的更传统方法是从时间服务器进行。 time.gov
在 nist.time.gov
有一个,您可以使用以下 bash shell 命令请求日期和时间:
cat </dev/tcp/time.nist.gov/13
其中 return 是这样的:
58641 19-06-07 06:19:14 50 0 0 800.5 UTC(NIST) *
第二个和第三个字段是你想要的,分别代表日期和时间。我们可以使用 awk
:
cat </dev/tcp/time.nist.gov/13 | awk 'length([=12=])>0 {print 20,}'
其中 return 个:
2019-06-07 06:19:14
由于您特别请求 AppleScript 来执行此操作,这将 return 向您提供上述日期和时间:
do shell script "cat </dev/tcp/time.nist.gov/13 | awk 'length([=14=])>0 {print 20,}'"
这将 return 给你日期:
do shell script "cat </dev/tcp/time.nist.gov/13 | awk 'length([=15=])>0 {print 20}'"