问题背景
今天在使用 connda 创建环境的时候发现了一个问题,安装pip依赖一直失败。在网上找了资料无非是说以下几点:
- 网络有问题导致拉取网络依赖失败
- python版本跟依赖包不兼容
- 包版本不可用或者已经下架
现在让我们来一步一步进行定位
先查看自己的依赖包文件
conda依赖包的yml文件定义,使用pip:下级的依赖会使用pip进行安装,如果发现自己使用的包在conda中没上架需要配置好再进行安装
ini
- pip:
- clip==0.2.0
- colorama==0.4.6
- fsspec==2025.3.0
问题定位
1. 网络有问题导致拉取网络依赖失败
笔者最后也是这个问题,但是是在踩过很多坑之后才发现这个问题。因为一开始在清华的镜像和国外镜像来回横跳。但都报错同样的问题导致以为是python版本问题或者其他问题。其实该问题解决到最后大部分是网络问题。
最后我成功解决使用的是阿里云的镜像。
需要注意的点是:
- 关闭防火墙和代理,使用国内网进行安装
- 因为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装,如进行手动安装时这点有效
arduino
pip config set global.index-url <https://mirrors.aliyun.com/pypi/simple/>
2. python版本有问题
这个问题比较容易定位,使用命令** pip show 依赖名** 即可进行定位。可以看下方的 requires** 和 ** required-by** 字段的值进行定位
less
Name: clip
Version: 0.2.0
Summary: A CLI clipboard manager
Home-page: <http://procrastinatingdev.com/clip/>
Author: Adam McKerlie
Author-email: adammckerlie@gmail.com
License: Copyright (C) 2012 Adam McKerlie
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Location:
Requires:
Required-by:
3. 包版本不可用或者已经下架(手动安装)
这里分为两部分,一部分是conda的包版本不可用,一部分是pip的包版本不可用
这里有几个注意点:
- 因为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装。我一开始pip install手动安装clip依赖包是可用的,但是conda检测不到。故先激活到该环境再安装,才可以检测到。
- pip可以直接在官网上面查看包是否下架
PIP包名检测地址:
PyPI · The Python Package Index
arduino
# conda 检测 查看返回语句是否报错 如果安装成功也可以直接用了
conda install 依赖名
# pip检测 同上
pip install 依赖名
4. 下载whl文件到本地安装
终极解决方案,如果确定包是存在可用的,但是就是拉取不下来,那么可以在官方仓库中找到依赖文件到本地进行安装,下面是安装地址:
PyPI · The Python Package Index
安装命令:

perl

pip install /path/to/clip-0.2.0-py3-none-any.whl
需要注意的是,为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装。我一开始pip install手动安装clip依赖包是可用的,但是conda检测不到。故先激活到该环境再安装,才可以检测到。重要的事情说了三遍
总结
其实无非是网络问题、版本问题、为什么检测不到和包是否不存在的问题。先通过修改镜像判断是否为网络问题,其次在官网上面查询该包查看是否有版本限制,最后手动下载查看是否可以检测到。如果包下架了就手动找到whl文件进行安装,如果可以下载但是检测不到可以激活环境后再下载。