Python 3.8.8 没有联网,想把 python-docx 装上,其实方法比较多。最省事的是提前在有网的机器上把 whl 文件下载好,拷贝过去直接 pip install。如果环境允许编译,源码包安装也行,就是稍微麻烦一点。下面把这几种方式都列一下。
通过 whl 文件安装(最推荐)
在有网的电脑上,可以用 pip download 把包和依赖一起拉下来:
pip download python-docx -d ./offline_packages --platform win_amd64 --python-version 38 --only-binary=:all:
这样会得到一个文件夹,里面包含 python-docx 以及 lxml、Pillow 这些依赖。如果网络环境不方便跑 pip download,也可以手动去 PyPI 下载对应版本的 whl 文件:
- python-docx: https://files.pythonhosted.org/packages/…/python-docx-1.1.0-py3-none-any.whl
- lxml (4.9.3)
- Pillow (10.3.0)
- typing-extensions (4.9.0)
把下载好的文件全部复制到离线机器上,然后按顺序安装依赖:
pip install lxml-4.9.3-cp38-cp38-win_amd64.whl
pip install Pillow-10.3.0-cp38-cp38-win_amd64.whl
# typing-extensions 通常作为依赖自动处理,如果没装可以补一下
pip install python_docx-1.1.0-py3-none-any.whl
如果都是纯 Python 包(比如 python-docx 本身),跨平台一般没问题;但 lxml、Pillow 这类包含 C 扩展的包,一定要看准 cp38 和平台(win_amd64 或 win32)再下。
从源码包安装(适合能编译的环境)
如果 whl 文件实在找不到,或者环境比较特殊,可以下载源码包自己编译。从 PyPI 上把 python-docx-1.1.0.tar.gz 和 lxml、Pillow 的源码包下载下来。
解压后进入目录,先装依赖:
tar -xzf python-docx-1.1.0.tar.gz
cd python-docx-1.1.0
pip install ../lxml-4.9.3.tar.gz
pip install ../Pillow-10.3.0.tar.gz
pip install .
这种方式需要目标机器上有 C 编译器,Windows 上通常要装 Visual C++ Build Tools,不如 whl 方便。
用脚本批量下载
如果一次要准备多个包,可以写个简单的 Python 脚本来下载:
import os
import subprocess
packages = ['lxml==4.9.3', 'Pillow==10.3.0', 'python-docx==1.1.0']
os.makedirs('offline_packages', exist_ok=True)
for package in packages:
cmd = f'pip download {package} -d ./offline_packages --platform win_amd64 --python-version 38'
subprocess.call(cmd)

