• pip安装提示PermissionError: [WinError 5]错误问题解决


    操作环境

      Python3.6 + Winodws7

    问题现象

      新安装python3.6版本后使用pip安装第三方模块失败,报错信息如下:

    C:Userslinyfeng>pip install lxml
    Collecting lxml
      Downloading http://pypi.doubanio.com/packages/fb/41/b8d5c869d01fcb77c72d7d226a847a3946034ef19c244ac12920b71cd036/lxml-3.8.0-cp36-cp36m-win32.whl (2.9MB)
        100% |████████████████████████████████| 2.9MB 4.6MB/s
    Installing collected packages: lxml
    Exception:
    Traceback (most recent call last):
      File "c:program files (x86)python36-32libsite-packagespipasecommand.py", line 215, in main
        status = self.run(options, args)
      File "c:program files (x86)python36-32libsite-packagespipcommandsinstall.py", line 342, in run
        prefix=options.prefix_path,
      File "c:program files (x86)python36-32libsite-packagespip
    eq
    eq_set.py", line 784, in install
        **kwargs
      File "c:program files (x86)python36-32libsite-packagespip
    eq
    eq_install.py", line 851, in install
        self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
      File "c:program files (x86)python36-32libsite-packagespip
    eq
    eq_install.py", line 1064, in move_wheel_files
        isolated=self.isolated,
      File "c:program files (x86)python36-32libsite-packagespipwheel.py", line 345, in move_wheel_files
        clobber(source, lib_dir, True)
      File "c:program files (x86)python36-32libsite-packagespipwheel.py", line 316, in clobber
        ensure_dir(destdir)
      File "c:program files (x86)python36-32libsite-packagespiputils\__init__.py", line 83, in ensure_dir
        os.makedirs(path)
      File "c:program files (x86)python36-32libos.py", line 220, in makedirs
        mkdir(name, mode)
    PermissionError: [WinError 5] 拒绝访问。: 'c:\program files (x86)\python36-32\Lib\site-packages\lxml'

    问题分析

      提示PermissionError权限不足。查看当前cmd命令执行的用户以及该用户是否具有administrator权限。

      (1)查看windows当前登录用户,使用命令whoami或者echo %username%

    C:UsersTest>whoami
    China	est
    或者
    C:UsersTest>echo %username%
    test

      (2)查看test用户及所属管理组

    C:UsersAdministrator>net user Test
    用户名                 Test
    全名
    注释                   管理计算机(域)的内置帐户
    用户的注释
    国家/地区代码          000 (系统默认值)
    帐户启用               Yes
    帐户到期               从不
    
    上次设置密码           2010/11/21 5:56:34
    密码到期               从不
    密码可更改             2010/11/21 5:56:34
    需要密码               Yes
    用户可以更改密码       Yes
    
    允许的工作站           All
    登录脚本
    用户配置文件
    主目录
    上次登录               2018/1/10 21:17:20
    
    可允许的登录小时数     All
    
    本地组成员             *Users
    全局组成员             *None
    命令成功完成。

     (3)查看c:\program files (x86)\python36-32\Lib\site-packages路径的site-packages文件夹目录权限

      Users用户组的用户不具备写入权限,可以使用administrator权限用户执行或者将Test用户加入administrator用户组。

    问题解决

      使用管理员权限运行cmd命令,具体操作过程如下步骤所示:

    (1) 利用where查找cmd运行绝对路径

    C:Users	est>where cmd
    C:WindowsSystem32cmd.exe

    (2) 到C:WindowsSystem32目录下,右键单击cmd.exe文件以管理员身份运行。如下

    运行结果如下:

    可以发现路径名变成了C:Windowssystem32>

    (3) 重新执行pip install lxml,结果如下

    C:Windowssystem32>pip install lxml
    Collecting lxml
      Downloading http://pypi.doubanio.com/packages/fb/41/b8d5c869d01fcb77c72d7d226a847a3946034ef19c244ac12920b71cd036/lxml-3.8.0-cp36-cp36m-win32.whl (2.9MB)
        100% |████████████████████████████████| 2.9MB 6.8MB/s
    Installing collected packages: lxml
    Successfully installed lxml-3.8.0

    (4) 安装成功。

    知识引申

     DOS其他相关操作命令

    query user:显示有关终端服务器上的用户会话的信息
    net localgroup administrator ${普通用户名} /add:将指定用户给予管理员权限
    netplwiz:打开用户账户管理界面快捷键
  • 相关阅读:
    python 网络编程 socket模块中的常用方法
    python 网络编程 主要是黏包 三种解决方案
    python 网络编程 tcp/dcp 通信 和 时间同步机制
    python 网络编程 计算机部分基础 和初识tcp和udp
    python 包和模块
    python 包和模块 有固定的包格式自己注意
    Jquery常用的一些事件 keyup focus
    常规的页面布局
    校验输入正整数
    遍历input文本框
  • 原文地址:https://www.cnblogs.com/linyfeng/p/7203211.html
Copyright © 2020-2023  润新知