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

使用PyAutoGUI截图时遇Pillow版本字符串与整数比较错误

解决PyAutoGUI截图时的Pillow版本号类型错误

问题根源

报错核心是pyscreeze旧版本的_screenshot_osx函数中,直接将Pillow版本号字符串转为元组(如('10', '0', '0')),再和整数元组(6, 2, 1)做大小比较——字符串与整数无法用<运算符,触发类型错误。

解决步骤

方法1:安装修复该问题的pyscreeze版本

当前pyscreeze 0.1.29仍存在该bug,可直接安装仓库最新开发版:

pip3 install --upgrade git+https://github.com/asweigart/pyscreeze.git

方法2:手动修改pyscreeze源码

找到报错文件路径:/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pyscreeze/__init__.py,定位到第527行附近的代码:

if tuple(PIL__version__) < (6, 2, 1):

替换为:

if tuple(map(int, PIL__version__.split('.'))) < (6, 2, 1):

这段代码会将版本号的每个分段转为整数后再比较,彻底解决类型不匹配问题。

方法3:临时降级Pillow版本(快速 workaround)

如果不想修改代码或安装开发版,可临时安装旧版Pillow规避问题:

pip3 install pillow==9.5.0

处理依赖冲突

升级时出现的pyautogui 0.9.54 requires pygetwindow>=0.0.5提示,只需安装缺失依赖即可:

pip3 install pygetwindow>=0.0.5

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 20:12:47