当前位置: 首页 > article >正文

离线环境下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 自动化测试框架离线环境 下也可以顺利运行 🚀!


http://www.kler.cn/a/570155.html

相关文章:

  • 第15届 蓝桥杯 C++编程青少组中级省赛 202408 真题答案及解析
  • (链表 删除链表的倒数第N个结点)leetcode 19
  • 网络编程——TCP
  • 07CSS笔记——CSS3、属性选择器、结构伪类选择器、伪元素选择器
  • 质数,因数,公因数
  • 二、QT和驱动模块实现智能家居-----问题汇总1
  • AI 零样本学习(Zero-Shot Learning, ZSL)
  • 全面了解机器学习:回归、分类、分割与检测任务
  • Spring(二)容器
  • Metasploit multi/handler 模块高级选项解析
  • 014 rocketmq角色介绍
  • 谷仓的安保
  • MySQL:MySQL的数据类型
  • 全志A133 android10 mipi屏幕调试
  • NameError: name ‘libpaddle‘ is not defined
  • 【windows driver】 开发环境简明安装教程
  • ECS单机部署Hadoop
  • CSS中table常用的独有属性
  • 【软件安装】WebStorm现在免费,但是是非商业版本
  • Machine Learning 初探