离线环境下python依赖包处理
在离线环境下,存放和管理 Python 依赖包 需要特殊处理。你可以采用 本地离线安装 方式,将 requirements.txt
依赖打包存储,并在不同机器上安装。以下是完整的 依赖包存放与安装方案:
📌 依赖包存放方案
1. 生成 requirements.txt
如果你的 PyCharm 环境 已经安装好所有依赖,运行以下命令导出依赖列表:
pip freeze > requirements.txt
requirements.txt
会包含类似以下内容:
pytest==7.4.2
allure-pytest==2.13.2
requests==2.31.0
selenium==4.10.0
这样,其他环境可以用
pip install -r requirements.txt
统一安装依赖。
2. 下载所有依赖包并存放
在 联网环境 下,使用以下命令下载所有 requirements.txt
里的包:
pip download -r requirements.txt -d packages/
这会在当前目录下创建 packages/
目录,并下载所有依赖项(包括 .whl
和 .tar.gz
文件)。
📌 最终文件目录结构:
/your_project
│── /packages/ # 存放离线安装包
│ ├── pytest-7.4.2-py3-none-any.whl
│ ├── allure_pytest-2.13.2-py3-none-any.whl
│ ├── requests-2.31.0-py3-none-any.whl
│ ├── selenium-4.10.0-py3-none-any.whl
│ └── ...
│── requirements.txt # 依赖清单
│── pytest.ini # Pytest 配置文件
│── README.md # 项目说明文档
📌 在离线环境中安装依赖
方法 1:手动安装
将 packages/
目录拷贝到离线机器,并使用以下命令安装:
pip install --no-index --find-links=packages/ -r requirements.txt
--no-index
:不访问 PyPI 在线仓库--find-links=packages/
:指定本地离线包路径
方法 2:创建本地 PyPI 仓库
如果你在离线环境下需要多次管理 Python 包,可以使用 本地 PyPI 仓库 来存放依赖:
pip install pip2pi
然后在离线机器上创建 PyPI 仓库:
mkdir my_pypi
pip2pi my_pypi packages/
安装时使用:
mkdir my_pypi
pip2pi my_pypi packages/
这样可以在本地模拟 PyPI 仓库,方便管理。
📌 总结
方式 | 适用场景 | 命令 |
---|---|---|
pip download | 离线存放 .whl 依赖 | pip download -r requirements.txt -d packages/ |
pip install 本地包 | 直接从 packages/ 目录安装 | pip install --no-index --find-links=packages/ -r requirements.txt |
本地 PyPI 仓库 | 适用于离线环境长期管理 | pip2pi my_pypi packages/ + pip install --index-url=file:///... |
这样,你的 PyCharm 自动化测试框架 在 离线环境 下也可以顺利运行 🚀!