试图使用pip在python中安装新模块时,cmd正在搜索错误的文件路径

试图使用pip在python中安装新模块时,cmd正在搜索错误的文件路径,python,windows,python-3.x,cmd,pyautogui,Python,Windows,Python 3.x,Cmd,Pyautogui,我正在使用CMD安装pyautogui模块,并不断出现以下错误: Command "python setup.py egg_info" failed with error code 1 in C:\Users\ANDBOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\ 我使用pip install pyautogui启动安装,在出现错误之前,cmd显示以下代码: C:\WINDOWS\system32>pip install

我正在使用CMD安装pyautogui模块,并不断出现以下错误:

Command "python setup.py egg_info" failed with error code 1 in C:\Users\ANDBOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\
我使用
pip install pyautogui
启动安装,在出现错误之前,cmd显示以下代码:

    C:\WINDOWS\system32>pip install pyautogui
Collecting pyautogui
  Using cached PyAutoGUI-0.9.33.zip
Collecting pymsgbox (from pyautogui)
  Using cached PyMsgBox-1.0.3.zip
Collecting PyTweening>=1.0.1 (from pyautogui)
  Using cached PyTweening-1.0.3.zip
Collecting Pillow (from pyautogui)
  Downloading Pillow-4.0.0-cp36-cp36m-win32.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 78kB/s
Collecting pyscreeze (from pyautogui)
  Using cached PyScreeze-0.1.8.zip
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\ANDBOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\setup.py", line 6, in <module>
        version=__import__('pyscreeze').__version__,
      File "C:\Users\ANBDOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\pyscreeze\__init__.py", line 21, in <module>
        from PIL import Image
    ModuleNotFoundError: No module named 'PIL'
C:\WINDOWS\system32>pip安装pyautogui
收集pyautogui
使用缓存的PyAutoGUI-0.9.33.zip
正在收集pymsgbox(从pyautogui)
使用缓存的PyMsgBox-1.0.3.zip
正在收集PyTweening>=1.0.1(从pyautogui)
使用缓存的PyTweening-1.0.3.zip
收集枕头(来自pyautogui)
下载枕头-4.0.0-cp36-cp36m-win32.whl(1.3MB)
100% |████████████████████████████████| 1.3MB 78kB/s
正在收集pyscreeze(从pyautogui)
使用缓存的PyScreeze-0.1.8.zip
从命令python setup.py egg_info完成输出:
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“C:\Users\ANDBOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\setup.py”,第6行,在
版本=uuu导入('pyscreeze')。uu版本uuu,
文件“C:\Users\ANBDOD~1\AppData\Local\Temp\pip-build-pmc8kstd\pyscreeze\pyscreeze\\ uuuuu init\uuuu.py”,第21行,在
从PIL导入图像
ModuleNotFoundError:没有名为“PIL”的模块
我相信发生错误是因为cmd正在搜索C:\Users\ANDBOD。。。文件路径,而这不是我保存python文件的地方。我尝试以管理员身份打开cmd,但收到了相同的错误

两周前,我使用了完全相同的过程来安装openpyxl,没有问题,但现在无论我尝试安装哪个模块,我都会遇到同样的问题


提前感谢您的帮助

只有当没有模块PIL时,才会发生此错误,其后果很简单。 安装PIL 同时,您还可以检查一些其他线程


下面是我如何解决这个问题的评论:

@拉法达-


@MattDMo-显示的目录只是一个临时目录,不用担心。如果你仔细阅读输出,它会准确地告诉你出了什么问题。pip正在尝试安装pyautogui,它有许多依赖项。其中一个依赖项pyscreeze需要PIL模块,它是由Pillow包提供的(是的,它让人困惑)。您将看到Pillow已经下载,但尚未安装,因此当PyScreeze中的setup.py尝试导入PyScreeze时,它会失败,因为它尚未找到PIL模块。解决方案pip安装pillow,然后安装pyautogui。

试试看,显示的目录只是一个临时目录,不用担心。如果你仔细阅读输出,它会准确地告诉你出了什么问题。pip正在尝试安装具有多个依赖项的
pyautogui
。其中一个依赖项,
pyscreeze
,需要
PIL
模块,它是由
Pillow
包提供的(是的,它很混乱)。您将看到Pillow已经下载,但尚未安装,因此当PyScreeze中的
setup.py
尝试导入
PyScreeze
时,它会失败,因为它尚未找到
PIL
模块。解决方案
pip安装枕头
,然后安装pyautogui。@Lafada gold。。。我只是使用了他们在那里发布的内容的变体,直到它突然决定起作用。谢谢@马特莫,谢谢!这正是Lafada发布的链接所说的。这与cmd shell无关。cmd搜索并执行pip.exe,它负责解析命令行的其余部分。pip从cmd.exe继承控制台(conhost.exe)的标准句柄,然后cmd在后台等待pip退出。pip.exe依次执行python.exe以运行安装在“Lib/site包”中的pip包的主入口点。