python - "Pillow was built without XCB support"

标签 python python-3.x pip python-imaging-library

我正在开发一个在 Pillow 中使用 ImageGrab 的程序。我收到标题中提到的错误。我在文档中注意到它说的是通用的 pip install Pillow不附带 libxcb。我尝试使用 pip install libxcb 安装 libxcb ,但它显然不存在。我试着在谷歌上四处寻找,但没有任何帮助。

如果有人能指出我需要安装的特定库和要运行的命令,我将不胜感激!

我应该提到我正在运行的 python 是 Windows Store v3.8。我试图在我的 SSD 上保留最少的数量,并且不希望我不会使用的东西产生大量开销。

最佳答案

我终于弄明白了。发生的事情是我试图使用 grab(x, y, w, h)没有 bbox=(x, y, w, h)范围。在我两天的旅程中,我没有在互联网上找到任何有用的东西。我一直认为它无法正常工作,因为缺少软件包或某些 Linux/Windows 转换依赖项。

我希望这可以帮助任何遇到这个非常简单但令人痛苦的错误的人。

这正是我在做什么:

def grab(x, y, w, h):
    screen = np.array(ImageGrab.grab(x, y, w, h)) # Throws XCB error
    ...
    return screen

以下是适用于 Windows 平台的正确代码:
def grab(x, y, w, h):
    screen = np.array(ImageGrab.grab(bbox=(x, y, w, h))) # Throws no errors
    # screen = np.array(ImageGrab.grab()) # Alternative that grabs full screen
    ...
    return screen

关于python - "Pillow was built without XCB support",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61537007/

相关文章:

python - OpenERP : insert Data code

python - 确定是否可以从类或实例调用可调用对象

python - 获取两个整数列表并创建类型列表对的更快方法

python - 如何安装 py.test-2.3?

python - 找出用于安装当前包的 Python?

gcc - pip install pysqlite 导致以下错误 : command 'x86_64-linux-gnu-gcc' failed with exit status 1 and `#include "sqlite3. h"`

python - 在 Pygame 中制作半透明暂停背景屏幕

python - 查找与不同年份匹配的所有月份、日期和时间,并取它们的平均值

python - 删除数据框中的重复元素python

python - 如何按照 PEP8 规则缩写维度?