pip安装openpyxl失败--如何克服proxy

failure to install openpyxl with pip--how to overcome proxy

我正在尝试安装 python 库 openpyxl。我刚刚在我的 windows 10 工作电脑上安装了 python 3.6。我的安装尝试的结果如下。

我发现了一个相关问题:pip install and custom index url

如果我的问题是使用代理,我能做些什么来安装 openpyxl 吗?

C:\Users[=10=]168070>pip install openpyxl

Collecting openpyxl Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError>(': Failed to establish a new connection: [Errno 11002] getaddrinfo failed',)': /simple/openpyxl/

Retrying (Retry(total=3, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11002] getaddrinfo failed',)': /simple/openpyxl/

Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11002] getaddrinfo failed',)': /simple/openpyxl/

Retrying (Retry(total=1, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11002] getaddrinfo failed',)': /simple/openpyxl/

Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11002] getaddrinfo failed',)': /simple/openpyxl/

Could not find a version that satisfies the requirement openpyxl (from versions: )

No matching distribution found for openpyxl

您的本地网络状态似乎无法解析主机名。也许你可以尝试从源代码安装,下面是我的步骤:

1:下载源码:

https://pypi.python.org/pypi/openpyxl

2:构建并安装:

python3.6 setup.py install

3:输出:

.........
creating dist
creating 'dist/openpyxl-2.5.0-py3.6.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing openpyxl-2.5.0-py3.6.egg
creating /usr/local/lib/python3.6/dist-packages/openpyxl-2.5.0-py3.6.egg
Extracting openpyxl-2.5.0-py3.6.egg to /usr/local/lib/python3.6/dist-packages
Adding openpyxl 2.5.0 to easy-install.pth file

Installed /usr/local/lib/python3.6/dist-packages/openpyxl-2.5.0-py3.6.egg
Processing dependencies for openpyxl==2.5.0
Searching for et-xmlfile==1.0.1
Best match: et-xmlfile 1.0.1
Adding et-xmlfile 1.0.1 to easy-install.pth file

Using /usr/local/lib/python3.6/dist-packages
Searching for jdcal==1.3
Best match: jdcal 1.3
Adding jdcal 1.3 to easy-install.pth file

Using /usr/local/lib/python3.6/dist-packages
Finished processing dependencies for openpyxl==2.5.0

4:导入和使用:

Python 3.6.3 (default, Oct  6 2017, 08:44:35)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from openpyxl import Workbook
>>>

在我的案例中,从 wheel 安装有效: 我必须在没有互联网的公司 LAN 服务器 (Win) 上安装 openpyxl 该解决方案基于 https://github.com/winpython/winpython/issues/600

pip install openpyxl-3.0.9-py2.py3-none-any.whl --no-index --trusted-host=None --find-links=C:\__the_whl_dir__

起初,这没有用,抱怨

ERROR: Could not find a version that satisfies the requirement et-xmlfile (from openpyxl) (from versions: none) ERROR: No matching distribution found for et-xmlfile

正在下载,复制et_xmlfile-1.1.0-py3-none-any.whl到同一个目录,运行再次pip安装,成功