基于AppleScript模拟鼠标重复点击【自动操作】

1,198 阅读2分钟

前言

AppleScript 被称为脚本「语言」,让不少本该掌握它的用户望而却步。但实际上,相较于其他脚本语言,它十分简单易学——它涉及的知识点最少、语法也比较灵活,除此之外它最好的一点是所有资料都在 Mac 中预设好了,我们可以随用随查。

这篇文章,是一篇带领你入门 AppleScript 的文章,我们将先从它是什么说起,再谈谈如何去根据 Mac 中预设的文档,写出自己需要的脚本。

希望我可以解除你对 AppleScript 这一「语言」的畏惧,释放你 Mac 的自动化能力。

一、打开AppleScript

set n to 13
set returnVal to 0

repeat with i from 0 to n
	set userNotDone to enterDataRecord()
	set returnVal to returnVal + i
end repeat


on enterDataRecord()
	delay 0.1
	tell application "System Events"
		click at {2536, 1171}
	end tell
end enterDataRecord

这段代码意思是,循环13次; 每次间隔0.5s,在屏幕{2536, 1171}的位置点击一下。

二、怎么获取鼠标坐标?

  1. 安装brew install cliclick
  2. 获取/usr/local/bin/cliclick p or /usr/local/bin/cliclick p.

三、用cliclick+python

import os
import time

cmd1 = "./cliclick c:789,867"
cmd2 = "./cliclick c:669,792"
for i in range(1000):
    mess1 = os.system(cmd1)
    print(mess1)
    time.sleep(10)
    mess2 = os.system(cmd2)
    print(mess2)
    print('----' + str(i+1) + '------')
    time.sleep(100)

四、大佬的AppleScript

www.jianshu.com/p/56bc3e558…

tell application "Terminal"
    activate
end tell

tell application "System Events"
    
    tell process "Terminal"
        keystroke "ls"
        delay 1 -- 延时一秒后执行
        key code 36 -- 回车的键位码为36
    end tell
    
end tell
tell application "Terminal"
    activate
    #打开键盘偏好设置
    do script "open .  '/System/Library/PreferencePanes/Keyboard.prefPane'"
end tell

sspai.com/post/43758

tell application "Safari" to activate --打开 Safari
tell application "System Events"
    tell process "Safari"
        repeat until window 1 exists
            -- 直到 Safari 应用的一个窗口存在之前,不停循环这段空语句
        end repeat
        -- 第一个窗口出现之后,继续要做的事……
    end tell
end tell