在Windows上pip install access被拒绝

Bru*_*ein 93 python windows pip access-denied

我试图pip install mitmproxy在Windows 上运行,但我仍然拒绝访问,即使使用cmdPowerShell使用该Run as Administrator选项.

WindowsError: [Error 5] Access is denied: 'c:\\users\\bruno\\appdata\\local\\temp\\easy_install-0fme6u\\cryptography-0.9.1\\.eggs\\cffi-1.1.2-py2.7-win-amd64.egg\\_cffi_backend.pyd'
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

nay*_*yak 127

在windows的情况下,在cmd中尝试使用python可执行文件运行pip install

例如

python -m pip install mitmproxy
Run Code Online (Sandbox Code Playgroud)

这应该工作,至少它适用于我的其他包安装.

  • 无论出于何种原因,临时文件权限都不足以完全控制我的用户.通过`python -m`走这条路是有区别的. (6认同)
  • 我们知道_为什么_这有效吗?而不是通过powershell? (6认同)
  • 是的,@BigMoney,我强烈怀疑为什么它对这些用户有效:*他们被授予运行 Python 的权利,但没有运行 PIP 的权利*。使用 Python,您可以传递 -m 标志来指定要运行的_Python 模块_。PIP是一个Python模块,因此可以通过这种方式传递。但这适用于任何可以直接运行的 Python 模块。例如,尝试“python -m http.server 8000”,您将看到现在有一​​个 HTTP 服务器在本地计算机上的端口 8000 上运行。 (2认同)

Ric*_*ior 56

通过以下方式更改Python安装文件夹的安全权限:

  1. 打开一个Python shell
  2. 去任务管理器
  3. 找到python进程
  4. 右键单击并打开位置
  5. 该文件夹将在资源管理器中打开,上一个目录
  6. 右键单击该文件夹,然后选择属性
  7. 点击安全标签,然后点击"修改"
  8. 添加所有人并授予他们读写权限.
  9. 保存更改

如果您cmd以管理员身份打开; 然后你可以做以下事情:

如果你的Python设置了PATH,那么:

python -m pip install mitmproxy
Run Code Online (Sandbox Code Playgroud)

  • 我必须对所有应用程序包和用户都执行此操作,但是随后它起作用了。 (3认同)
  • 类似工作的替代路线:1)安装Linux 2)`sudo pip install foo` (3认同)
  • 效果很好。万分感谢! (2认同)
  • @Chronicle 你真的允许每个人读写用户配置文件吗?如果是,那是个很糟糕的主意(非常糟糕)。 (2认同)

Bho*_*pat 25

就个人而言,我发现,通过开放cmd作为管理员,然后运行 python -m pip install mitproxy 似乎解决我的问题.

注意: -我安装了pythonchocolatey


Rob*_*ert 12

还有一件事在以前的答案中没有涉及并且经常在Windows上引起问题并且阻止我安装一些软件包,尽管以管理员身份运行是因为如果有另一个程序使用某些文件你会得到相同的权限被拒绝错误(或pip install)尝试访问.这是Windows的一个非常愚蠢的"功能",弹出很多次,例如在尝试移动某些文件时.

此外,我不知道如何确定哪个程序锁定特定文件,因此最简单的方法是重新启动并在开始任何操作之前进行安装,特别是在运行例如Spyder或任何其他基于Python的软件之前.您也可以尝试关闭所有程序,但知道哪一个实际拥有文件可能会很棘手.例如,对于目录,只需在该目录中打开一个资源管理器窗口就足够了.


小智 9

使用"以管理员身份运行"打开cmd并执行命令pip install mitmproxy.它会安装它.


eto*_*tov 6

在我的例子中,原因是打开了一个 jupyter 笔记本,它正在导入相关的库;根本原因似乎是由于文件正在打开/正在使用而导致的Windows错误(另请参阅@Robert的答案,以及重新启动的建议)。

所以要验证的另一件事是没有其他 python 进程正在运行。

对我来说,关闭笔记本服务器解决了这个问题。


paj*_*nas 5

尝试授予完全控制 python 文件夹的权限。

找到python根目录-->右键单击-->属性-->安全-->编辑-->授予用户完全控制权-->是,等待过程完成。

这个对我有用。


sus*_*097 5

因为,我是通过anaconda Prompt安装的。在我的情况下,它甚至无法与python -m pip install然后,我将其添加

python -m pip install <package_name> --user
Run Code Online (Sandbox Code Playgroud)

这个对我有用。

喜欢: python -m pip install "numpy-1.15.4+mkl-cp36-cp36m-win_amd64.whl" --user

请注意,双引号不是必需的,您可以提供要安装的软件包名称。

另一个您应该尝试以“以管理员身份运行”身份运行命令提示符,然后尝试pip安装。它应该工作。