添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
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])

欢迎大家关注我的公众号,将会为大家推荐更优质的内容!