【问题标题】:pip install failed on 'Temporary failure in name resolution' inspite we install local pkg尽管我们安装了本地 pkg,但 pip install 因“名称解析中的临时失败”而失败
【发布时间】:2019-05-07 04:15:56
【问题描述】:

我们想通过 pip 安装 Jinja2-2.10-py2.py3-none-any.whl 包 - 在新的 REDHAT 操作系统(版本 7.2)上

pip install Jinja2-2.10-py2.py3-none-any.whl
Processing ./Jinja2-2.10-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from Jinja2==2.10)
  Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'ProtocolError('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))': /simple/markupsafe/

我不明白为什么在我们想通过 pip 安装 - Jinja2-2.10-py2.py3-none-any.whl 软件包时 pip 因“名称解析暂时失败”而失败?

我们还尝试了以下方法,但没有成功:

pip install --no-index --find-links  Jinja2-2.10-py2.py3-none-any.whl
Ignoring indexes: https://pypi.python.org/simple
You must give at least one requirement to install (maybe you meant "pip install Jinja2-2.10-py2.py3-none-any.whl"?)

pip install --no-index /tmp/install/Jinja2-2.10-py2.py3-none-any.whl
Ignoring indexes: https://pypi.python.org/simple
Processing ./Jinja2-2.10-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from Jinja2==2.10)
  Could not find a version that satisfies the requirement MarkupSafe>=0.23 (from Jinja2==2.10) (from versions: )
No matching distribution found for MarkupSafe>=0.23 (from Jinja2==2.10)

 pip install -U Jinja2-2.10-py2.py3-none-any.whl
Processing ./Jinja2-2.10-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from Jinja2==2.10)
  Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'ProtocolError('Connection aborted.', gaierror(-3, 'Temporary failure in name resolution'))': /simple/markupsafe/

 pip install -e  Jinja2-2.10-py2.py3-none-any.whl
Jinja2-2.10-py2.py3-none-any.whl should either be a path to a local project or a VCS url beginning with svn+, git+, hg+, or bzr+

在这种情况下 PIP - 是本地文件夹

pip install -e PIP/Jinja2-2.10-py2.py3-none-any.whl
PIP/Jinja2-2.10-py2.py3-none-any.whl should either be a path to a local project or a VCS url beginning with svn+, git+, hg+, or bzr+

更新

[root@Master install_zone]# ls PIP/
Jinja2-2.10-py2.py3-none-any.whl

[root@Master install_zone]#  pip install --no-index --find-links=./PIP Jinja2
Ignoring indexes: https://pypi.python.org/simple
Collecting Jinja2
Collecting MarkupSafe>=0.23 (from Jinja2)
  Could not find a version that satisfies the requirement MarkupSafe>=0.23 (from Jinja2) (from versions: )
No matching distribution found for MarkupSafe>=0.23 (from Jinja2)
[root@Master install_zone]#

我们检查解析为:(详细信息来自 /etc/resolv.conf)

[root@Master install_zone]# host  sys54.com
sys54.com has address 32.44.1.154
[root@Master install_zone]# host 32.44.1.154
17.2.21.10.in-addr.arpa domain name pointer mpsload.sys54.com.

【问题讨论】:

    标签: python pip jinja2


    【解决方案1】:

    您的命令有点错误,find-links 参数应该指向包所在的目录,而不是包本身:

    -f, --find-links 如果是 html 文件的 url 或路径,则 解析档案链接。如果本地路径或文件:// url 是 目录,然后在其中查找存档 目录列表。

    pip install --no-index --find-links Jinja2-2.10-py2.py3-none-any.whl 上方是指示 pip 在 Jinja2-2.10-py2.py3-none-any.whl 目录中查找包,但您没有告诉 pip 要安装什么。

    假设您将文件下载到名为 PIP 的子目录中,您的命令应该是:pip install --no-index --find-links=./PIP Jinja2

    【讨论】:

    • 请看我的 UPDAE ,它现在仍然可以根据您的建议工作
    • @Judy 根据您的更新,Jinja2 要求 MarkupSafe 的版本大于 0.23,因为您已经告诉 pip 仅从本地目录安装,您需要确保所有的依赖项存在。因此,您必须下载 MarkupSafe 的副本并将其放入该目录。在解决所有依赖关系之前,您必须继续该过程。
    • 您能建议如何找到正确的 - MarkupSafe 吗?
    • 您可以在pypi.org 上搜索包并从那里下载文件,MarkupSafe 可以查看pypi.org/project/MarkupSafe/#files
    • 我试试这个 - pip install --no-index --find-links=./PIP MarkupSafe-1.1.0-cp27-cp27m-manylinux1_x86_64.whl 忽略索引:pypi.python.org/simple Requirement 'MarkupSafe -1.1.0-cp27-cp27m-manylinux1_x86_64.whl' 看起来像一个文件名,但该文件不存在 MarkupSafe-1.1.0-cp27-cp27m-manylinux1_x86_64.whl 不是这个平台支持的轮子。
    猜你喜欢
    • 2015-12-28
    • 2019-10-31
    • 2017-09-18
    • 1970-01-01
    • 2019-03-24
    • 1970-01-01
    • 2022-10-20
    • 2020-09-17
    相关资源
    最近更新 更多