pip安装软件失败

用pip按照软件时报错:

Collecting pip
Exception:
Traceback (most recent call last):
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 346, in _make_request
    self._validate_conn(conn)
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 787, in _validate_conn
    conn.connect()
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connection.py", line 252, in connect
    ssl_version=resolved_ssl_version)
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/util/ssl_.py", line 305, in ssl_wrap_socket
    return context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/lib/python3.5/ssl.py", line 377, in wrap_socket
    _context=self)
  File "/usr/lib/python3.5/ssl.py", line 752, in __init__
    self.do_handshake()
  File "/usr/lib/python3.5/ssl.py", line 988, in do_handshake
    self._sslobj.do_handshake()
  File "/usr/lib/python3.5/ssl.py", line 633, in do_handshake
    self._sslobj.do_handshake()
socket.timeout: _ssl.c:629: The handshake operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 560, in urlopen
    body=body, headers=headers)
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 349, in _make_request
    self._raise_timeout(err=e, url=url, timeout_value=conn.timeout)
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 309, in _raise_timeout
    raise ReadTimeoutError(self, url, "Read timed out. (read timeout=

%s)" % timeout_value)
requests.packages.urllib3.exceptions.ReadTimeoutError: 

HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out. 

(read timeout=15)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pip/basecommand.py", line 209, 

in main
    status = self.run(options, args)
  File "/usr/lib/python3/dist-packages/pip/commands/install.py", line 

328, in run
    wb.build(autobuilding=True)
  File "/usr/lib/python3/dist-packages/pip/wheel.py", line 748, in 

build
    self.requirement_set.prepare_files(self.finder)
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 360, 

in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 512, 

in _prepare_file
    finder, self.upgrade, require_hashes)
  File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 

273, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 442, in 

find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 400, in 

find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "/usr/lib/python3/dist-packages/pip/index.py", line 545, in 

_get_pages
    page = self._get_page(location)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 648, in 

_get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 757, in 

get_page
    "Cache-Control": "max-age=600",
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-

any.whl/requests/sessions.py", line 480, in get
    return self.request('GET', url, **kwargs)
  File "/usr/lib/python3/dist-packages/pip/download.py", line 378, in 

request
    return super(PipSession, self).request(method, url, *args, 

**kwargs)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-

any.whl/requests/sessions.py", line 468, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-

any.whl/requests/sessions.py", line 576, in send
    r = adapter.send(request, **kwargs)
  File "/usr/share/python-wheels/CacheControl-0.11.5-py2.py3-none-

any.whl/cachecontrol/adapter.py", line 46, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-

any.whl/requests/adapters.py", line 376, in send
    timeout=timeout
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/connectionpool.py", line 610, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-

any.whl/urllib3/util/retry.py", line 228, in increment
    total -= 1
TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'

满屏红色我还以为是什么大事,结果只是因为网速不好下不下来。
将下载源更改到国内镜像即可。

国内镜像源

清华:https://pypi.tuna.tsinghua.edu.cn/simple

阿里云:https://mirrors.aliyun.com/pypi/simple/

中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

华中理工大学:http://pypi.hustunique.com/

山东理工大学:http://pypi.sdutlinux.org/

豆瓣:http://pypi.douban.com/simple/

更改方式

在命令后添加参数-i <镜像源地址>,如:

sudo pip install -r tools/pip-requires -i https://mirrors.aliyun.com/pypi/simple

然后就可以开心下载了。
在这里插入图片描述
这种方法和处理update速度慢的方法本质上是一致的,都是更改软件的下载源。
如果以后遇到类似访问国外网站速度慢的问题,也可以采用这种思路解决。

### pip 安装 `utils` 失败的原因分析与解决方法 在使用 `pip install utils` 命令时可能会遇到多种错误,这些错误通常可以分为网络问题、权限不足以及依赖冲突等问题。以下是针对这些问题的具体解决措施: #### 1. **网络超时或连接不稳定** 如果在网络环境中存在代理设置或其他限制条件,则可能导致下载失败。可以通过指定国内镜像源来加速安装过程并减少因网络原因导致的失败。 ```bash pip install utils -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com ``` 上述命令通过豆瓣提供的 Python 镜像站点尝试重新获取所需模块文件[^2]。 对于某些特定环境下的 Linux 发行版(如 Ubuntu),还可能出现读取超时异常情况: ```plaintext raise ReadTimeoutError(self._pool, None, 'Read timed out.') ``` 此时建议调整默认等待时间参数以适应较差网速状况下完成操作[^4]: ```bash pip --default-timeout=100 install utils ``` #### 2. **权限管理不当引发的操作受阻** 当目标目录属于系统级路径而非当前用户可写入区域时,执行常规形式的包加载指令将会抛出类似于下面这样的报错消息: ```plaintext OSError: [Errno 1] Operation not permitted... ``` 对此类情形有两种应对策略可供选择——要么切换至超级管理员身份后再重试;要么利用 `--user` 参数限定仅作用于本地账户配置范围内而不影响全局状态。 ```bash sudo pip install utils # 方法一:提升权限级别为root运行程序 pip install --user utils # 方法二:将软件组件绑定到个人资料夹内部署 ``` #### 3. **版本兼容性矛盾引起的构建障碍** 有时即使解决了前两者提到的技术难题之后仍然无法顺利导入期望的功能库,那很可能是由于基础框架之间的相互匹配程度不够理想所造成的后果之一便是触发如下类型的提示信息: ```plaintext Could not find a version that satisfies the requirement ... No matching distribution found for target package. ``` 鉴于此现象的存在频率较高因此特别推荐预先升级 PIP 工具本身从而获得最新改进成果进而提高成功率几率: ```bash python -m pip install --upgrade pip # 更新PIP工具链至最新型号[^1] ``` 另外值得注意的是,在处理复杂项目结构的时候往往还需要额外关注其底层支持要素比如 Six 库之类的辅助元件是否存在缺失或者过期等情况一旦发现就应当及时予以修复补充以免妨碍整体进程推进速度效率降低甚至完全停滞下来难以继续向前迈进任何一步距离成功更远一点而已罢了[^5]. 最后附上一段简单的验证代码片段用于测试刚刚装载完毕的新功能是否能够正常使用无误工作正常发挥预期效能表现良好稳定可靠值得信赖长期合作愉快共赢未来无限可能尽情探索吧朋友们! ```python import utils print(utils.__version__) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值