pip3 install py-imessage-shortcuts
创建快捷指令
该依赖的实现原理是通过调用快捷指令,将参数传递到快捷指令中来实现发送iMessage消息,
公众号回复:
iMessage快捷指令
获取快捷指令文件
,获取到快捷指令需要在Mac中双击安装即可。
只需要一行代码即可实现发送iMessage消息,需要注意的是我们需要给
Python
程序控制电脑的权限。
import imessage
imessage.send(['目标apple id'], '嗨👋,此消息由Python代码调用发送')
使用AppleScript
还有一种简单粗暴的方式,就是通过Apple自己的脚本AppleScript来调用发送iMesaage消息。
编写AppleScript脚本
tell application "Messages"
set targetService to 1st service whose service type = iMessage
set targetBuddy to buddy "此处是接收人的AppleId或邮箱" of targetService
send "此处是要发送的消息" to targetBuddy
end tell
tell application "Messages"
这行代码告诉AppleScript要与”Messages”应用程序进行交互。
set targetService to 1st service whose service type = iMessage
此代码将
iMessage
设置为第一服务,表示要发送的是iMessage消息。
set targetBuddy to buddy "此处是接收人的AppleId或邮箱" of targetService
设置一个接收人将
此处是接收人的此处是接收人的AppleId或邮箱
修改为目标的AppleId或者是邮箱地址。
send "此处是要发送的消息" to targetBuddy
此代码故名思义就是将该消息发送给上面指定的接收人。
Python中调用
Python通过执行shell来运行AppleScript的脚本:
import subprocess
# 接收人appleid或者邮件地址
target = "[email protected]"
message = "此消息由Python程序调用发出"
# 构建AppleScript脚本
applescript = f'''
tell application "Messages"
set targetService to 1st service whose service type = iMessage
set targetBuddy to buddy "{target}" of targetService
send "{message}" to targetBuddy
end tell
'''
# 执行AppleScript脚本
subprocess.run(['osascript', '-e', applescript])
欢迎大家关注我的公众号,将会为大家推荐更优质的内容!