python离线部署方案
我们在做自动化的过程中,经常遇到的环境是公司内网隔离环境,利用pip命令下载不了官网上的包或插件,今天我们来介绍pip download+pip install完全离线部署方案,让我们在内网一样可以运行我们的项目
首先创建虚拟环境venv来隔离环境
python -m venv new_venv
new_venv\Scripts\activate
pip install -r requirements.txt
然后在联网的虚拟环境下,安装所需的包和依赖包
安装好后,生成requirements.txt
pip freeze>requirements.txt
执行完命令后所有已安装的包和依赖就全部会输出到requirements.txt文件
allure-pytest==2.15.3
allure-python-commons==2.15.3
attrs==25.4.0
cachetools==6.2.4
certifi==2026.1.4
charset-normalizer==3.4.4
colorama==0.4.6
cssselect==1.3.0
cssutils==2.11.1
Faker==40.1.0
greenlet==3.3.0
idna==3.11
iniconfig==2.3.0
jsonpath==0.82.2
jsonpath-ng==1.7.0
lxml==6.0.2
more-itertools==10.8.0
packaging==25.0
playwright==1.57.0
pluggy==1.6.0
ply==3.11
premailer==3.10.0
pyee==13.0.0
Pygments==2.19.2
pytest==9.0.2
pytest-base-url==2.1.0
pytest-playwright==0.7.2
python-slugify==8.0.4
PyYAML==6.0.3
requests==2.32.5
text-unidecode==1.3
typing_extensions==4.15.0
tzdata==2025.3
urllib3==2.6.3
yagmail==0.15.293
步骤1:下载所有包到本地
创建本地打包目录packages
下载所有已安装的包
pip download -r requirements.txt -d packages
步骤2:复制整个packages目录到新环境
将packages目录进行压缩,利用邮件发送到内网环境
步骤3:在新环境安装
# 在新虚拟环境中安装
pip install --no-index --find-links=packages -r requirements.txt
后续若有新的包需要使用或替换,可以使用以下命令单独下载该包及其依赖
pip download pytest-playwright --only-binary :all: --platform win_amd64 --python-version 3.14 -d packages
命令下载pytest-playwright 的二进制版本,针对所有文件都下载二进制版本, 平台为windowsx64位,python版本为3.14, 打包在packages目录下
安装依赖包
pip install --no-index --find-links=. playwright
pip install --no-index --find-links=. pytest
pip install --no-index --find-links=. pytest-playwright