【问题标题】:How could I return the result (of Applescript) to next workflow?我怎样才能将结果(Applescript)返回到下一个工作流程?
【发布时间】:2012-02-15 00:41:15
【问题描述】:

对不起,我是 Applescript 和 Automator 的新手。

我已经创建了一个工作流程(使用 Applescript)从某个网站获取快照(通过 Firefox+附加“页面保护程序”+热键)。 但我希望将图像传递到工作流程的下一步以进行另一个流程。

接下来我该怎么做?

   tell application "Firefox"
   open location "http://xxx.xxx.xxx"
   activate

   tell application "System Events"
       keystroke "d" using {control down}
       -- take snapshot
   end tell
   delay 2
   close every window of application "Firefox"
   tell application "System Events"
       keystroke return
   end tell
   end tell

【问题讨论】:

  • 工作流中的下一步是另一个 AppleScript 吗?

标签: applescript automator


【解决方案1】:

这很草率,但它确实有效。

在页面保护程序首选项中,将您的屏幕截图保存到: /Users/Mark/Documents/Twin

main()

on main()
set screenshotFolder to (alias "Mac OS X:Users:Mark:Documents:Twin:")

tell application "Firefox"
    activate
    open location "http://www.stackoverflow.com"
    delay 3

    tell application "System Events"
        keystroke "d" using {control down}
        delay 2
        set latestDate to creation date of file 1 of screenshotFolder
        repeat with i from 2 to count of (list folder screenshotFolder)
            if creation date of file i of screenshotFolder is greater than latestDate then
                set latestDate to creation date of file i of screenshotFolder
            end if
        end repeat

        -- The targetFile is what you are looking for
        set targetFile to every file of screenshotFolder whose creation date is latestDate
    end tell
end tell
end main

【讨论】:

  • 是的,我也有类似的想法。我最初的想法是让 Finder 获取 screenshotFolder 中的“文件名”。您在截取屏幕截图之前执行此操作,然后再执行此操作。然后遍历第二个列表,对照第一个列表检查名称。当您找到不在第一个列表中的名称时……那就是您的新文件。和你的想法相似。
猜你喜欢
  • 1970-01-01
  • 2021-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-13
  • 1970-01-01
相关资源
最近更新 更多