使用AppleScript进行屏幕截图

时间:2012-01-06 20:29:52

标签: safari applescript screenshot keystroke

使用AppleScript在Safari中打开网页并对特定区域进行屏幕截图(使用Cmd + Shift + 4)。但我无法自动制作屏幕截图部分。

我正在使用MouseTools点击并移动鼠标。

set x to POSIX file ((POSIX path of (path to me)) & "/.." & "/MouseTools") as text
set pathName to POSIX path of x

tell application "Safari" to activate
open location "http://google.com"
delay 1
#do shell script quoted form of pathName & " -x 500 -y 167"
delay 1
tell application "System Events"
    #keystroke "3" using {command down, shift down}
end tell
delay 1
#do shell script quoted form of pathName & " -leftClick"

等...

按键命令适用于所有内容但屏幕截图。下一个问题是在向左按住鼠标的同时移动鼠标。有人有这个工作还是有更好的方法?

1 个答案:

答案 0 :(得分:3)

我很高兴看到你正在使用MouseTools。那是我的计划!然而,有一个命令行工具来拍摄称为screencapture的屏幕截图。我相信你应该使用它而不是你的gui方法。例如,以下是如何获取整个桌面的图片......

set imagePath to (path to desktop as text) & "screenCapture.png"
do shell script "screencapture -mx -T0 " & quoted form of POSIX path of imagePath

我确信有办法使用screencapture捕获屏幕的某个区域。稍微搜索一下它的手册页或google就会出现一些问题。