You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Crontab无法执行脚本排查:pyautogui模块缺失问题

解决Python脚本找不到pyautogui模块及crontab运行问题

问题场景

  • 脚本代码:
#!/usr/bin/python3

import pyautogui
import random

screen_width, screen_height = pyautogui.size()

x = random.randint(0, screen_width)
y = random.randint(0, screen_height)

pyautogui.moveTo(x, y)

print("Success!")
  • crontab执行条目:
/Library/Frameworks/Python.framework/Versions/3.11/bin/python3 /Users/tylerkivelson/Desktop/python/mouse_move_test.py
  • 终端运行./mouse_move_test.py时的错误:
Traceback (most recent call last):
  File "./mouse_move_test.py", line 3, in <module>
    import pyautogui
ModuleNotFoundError: No module named 'pyautogui'

解决方法

1. 匹配Python版本与pyautogui安装环境

终端执行命令,查看当前Python的模块安装路径:

python3 -m site

若输出的site-packages目录中无pyautogui,说明你可能用了不同Python版本安装模块,导致当前脚本调用的Python找不到它。

2. 用指定Python版本安装pyautogui

直接使用crontab中指定的Python路径安装模块,确保环境完全匹配:

/Library/Frameworks/Python.framework/Versions/3.11/bin/python3 -m pip install pyautogui

3. 验证脚本运行

安装完成后,再次在终端执行脚本:

./mouse_move_test.py

若仍报错,修改脚本开头的shebang为crontab使用的完整Python路径:

#!/Library/Frameworks/Python.framework/Versions/3.11/bin/python3

重新赋予执行权限:

chmod +x mouse_move_test.py

4. Crontab运行额外配置(针对macOS)

crontab的环境与终端不同,且GUI操作需要权限:

  • 确保脚本中所有路径均为绝对路径,避免依赖相对路径
  • 打开「系统设置」→「隐私与安全性」→「辅助功能」,将终端和/Library/Frameworks/Python.framework/Versions/3.11/bin/python3添加到允许列表

内容的提问来源于stack exchange,提问作者Teeck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 18:55:33