首页 > 其他分享 >pip:pip install时拒绝访问

pip:pip install时拒绝访问

时间:2024-03-04 11:12:17浏览次数:24  
标签:python 路径 sys 访问 install pip import

1、背景

在公司的内网电脑上,使用pip install报错拒绝访问。

根据网上查到的经验,要么是以管理员方式运行cmd,要么是在pip指令后加target参数修改安装路径,但是这两种方式都无法起效果。

在cmd中输入where pip

where pip

d:\用户\xxx\Desktop\pypro\pip.exe

可以看到pip指令实际上是访问可执行文件pip.exe,但是这里拒绝访问,说明我们没有访问该文件的权限(因为如果是pip不存在,报错内容应该是'pip' 不是内部或外部命令,也不是可运行的程序)。

后来经过分析,我发现应该是公司电脑上所有的pip都无法访问(猜想是pip需要用超级管理员的权限),所以只能用别的方法。

2、解决

1)python -m pip install six.whl

在cmd中,使用python -m pip install six.whl指令代替pip指令来安装离线包six,可以把包安装在python同级目录下的lib\site-package目录下。(python -m代表以module的方式执行命令,前提是后边的module确是python的一个包)。

究其原因,是因为python -m pip 是以python调用pip这个模块的方式来执行pip命令的(也就是说pip其实也是python的一个module),此时你如果用python -m pip -V,可以不仅看到pip的版本,也可以看到这个pip module的路径:

而在用where pip指令看pip的路径时,会发现是另一个(可执行文件):

 

用python -m pip install xxx.whl安装的包,都会被安装到这里的pip上级目录中,在这里就是D:\Python\Python3\lib\site-package中。此时你去这个目录中,是可以看到刚刚安装的包的。

2)import six

进入Python,使用import six导入刚刚装好的包,如果导入成功,说明安装完成(下文就不用再看了)。

 

如果导入失败,说明还要修改python的import路径。

3)修改python的import路径

进入python输入指令:

import sys
sys.path

 可以看到一系列的路径,这里是import的module搜索路径。

在第1步中的安装路径,如果没有在这里,也是无法正常访问安装的包的。

使用指令sys.path.append('路径')可以把路径加到sys.path中,本例中就是:

sys.path.append('D:\Python\Python3\lib\site-package')

此时再用sys.path,可以发现该路径已在其中。

此时就能用import把之前下载的离线包导入进来了。

 

标签:python,路径,sys,访问,install,pip,import
From: https://www.cnblogs.com/ShineLeBlog/p/18051410

相关文章

  • Windows操作系统中的时间戳(Timestamp)是指用于标记事件发生时间的一种时间表示方式。在
    Windows操作系统中的时间戳(Timestamp)是指用于标记事件发生时间的一种时间表示方式。在计算机系统中,时间戳通常用来记录文件的创建时间、修改时间、访问时间等信息,也常用于网络通信中的认证和数据同步等场景。以下是Windows时间戳的基础技术原理:系统时钟:Windows操作系统通过系统......
  • SpringCloud Alibaba-5-并发访问
    微服务架构应用设计目的为了应对高并发环境!1.什么是并发,并行并发:指在同一时间段内,多个任务或进程同时执行或交替执行的能力。并行:指多个任务在同一时间段内同时执行,需要多个处理器或多核处理器来实现。总的来说,并发更多地强调任务之间的交替执行,而并行更多地强调任务的同......
  • AR路由器配置内网通过公网IP访问内网服务器(域内NAT)
    为了保护内网服务器的IP,内网用户去访问服务器时,也需要使用公网IP,此时需要配置域内NAT功能。AR路由器域内NAT(也可称为NAT回流)实现内网用户通过公网IP访问内网服务器,详细配置分为如下两个场景。说明:如果不清楚内网PC与映射服务器是否在同一个网段,可直接参考场景二进行配......
  • Centos 上python3 pip3安装报错:WARNING: pip is configured with locations that requ
    pip3安装报错:WARNING:pipisconfiguredwithlocationsthatrequireTLS/SSL,howeverthesslmoduleinPythonisnotavailable.在网上查一下原因是openssl版本不兼容导致,centos默认带的openssl版本太低,要升级openssl版本。openssl  下载地址:https://www.openssl.org/s......
  • C++ 类访问修饰符
    私有(private)成员成员和类的默认访问修饰符是private,如果没有使用任何访问修饰符,类的成员将被假定为私有成员。私有成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有类和友元函数可以访问私有成员。实际操作中,我们一般会在私有区域定义数据,在公有区域定义相关的函数......
  • 接口写完想快速压力测试?试试Apipost一键压测功能
    背景研发同学在调试完成某些接口后需要验证一下高并发情况下的接口运行情况。这时候必须得跟测试同学协调一下,但这来来回回也有点麻烦,而实际上,这个工作量并不算太大。所以Apipost也是推出了一键压测功能来解决这个痛点场景。这篇文章给大家介绍Apipost的一键压测功能。使用方法......
  • C# NamedPipe传输测试
    CancellationTokenSourcects=newCancellationTokenSource();CancellationTokentoken=cts.Token;Tasktserver=Task.Run(()=>{ NamedPipeServerserver=newNamedPipeServer(); server.dowork(token); });Tasktclient=Task.Run(()=>{ Named......
  • 虚拟环境中pip命令存在问题
    问题:我在虚拟机上面的虚拟环境里安装django出现问题原因:由于在虚拟环境中pip安装存在问题或者pip没有正确安装导致的。解决办法:重新安装pip:在虚拟环境中运行以下命令来重新安装pip:python-mensurepip(实测第一个方法有用)使用python-mpip命令:尝试使用python-m......
  • NPM install报错certificate has expired
    Installfail!Error:certificatehasexpiredError:certificatehasexpiredatTLSSocket.onConnectSecure(_tls_wrap.js:1515:34)atTLSSocket.emit(events.js:400:28)atTLSSocket._finishInit(_tls_wrap.js:937:8)atTLSWrap.ssl.onhandshakedone(_......
  • 无法启动 IIS Express Web 服务器、无法注册 URL、访问被拒绝
    https://stackoverflow.com/questions/23502327/unable-to-launch-the-iis-express-web-server-failed-to-register-url-access-is-d34当我尝试从远程位置访问我的网站时,发生了这种情况:首先,applicationhost.config(VS2015)包含标准:<bindingprotocol="http"bindingInform......