首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Python依赖包离线打包和安装

  • 25-03-07 23:22
  • 3142
  • 10955
blog.csdn.net

在日常的工作中,本机进行Python程序开发时,安装了很多开发依赖包,最后进行生产环境的移植时,由于生产环境不能连接外网,无法针对开发时用到的依赖包进行联网安装,此时需要把本机环境打包或是开发依赖包进行打包迁移,环境打包迁移,可参考:anaconda3环境整体打包迁移_anaconda打包环境-CSDN博客

本次主要介绍如何针对依赖包进行迁移,依赖包打包可通过pip freeze、download打离线包,最后通过pip install来把下载好的离线包在生产环境进行安装即可。

具体操作如下:

一、利用pip freeze将系统已安装的包按照需要的格式打包

pip freeze是一个用于生成 Python项目中所需依赖包列表的命令。它会列出所有已安装的包及其精确的版本号。这个命令非常有用,因为它可以帮助开发者确保他们的项目在不同的环境中都能正确运行。

pip freeze命令的参数如下:

命令参数命令参数说明
-l,--local只列出本地安装的包(即忽略用户站点目录中的包)
-r, --requirement 使用给定的 requirements 文件作为基础,只列出在该文件中指定的包
-a, --all不仅列出顶级包,还列出所有子包

具体命令如下:

(iwen_search) [iwen@jina-milvus iwen]$ pip freeze >/iwen/requirements.txt

-- 重定向,并且指定输出文件名称、格式、路径

这里我把相应的依赖包信息导出到了/iwen目录下,大家可以根据实际情况导出到自己规定好的目录。

导出结果如下:

  1. (iwen_search) [iwen@jina-milvus iwen]$ cat requirements.txt
  2. aiohappyeyeballs==2.4.0
  3. aiohttp==3.10.5
  4. aiosignal==1.3.1
  5. annotated-types==0.7.0
  6. anyio==4.4.0

二、利用pip download下载离线包

pip download 是一个用于从Python包索引(PyPI)下载Python包的命令行工具。它可以下载特定版本的包,或者下载满足特定条件的所有包。

pip download 部分参数如下:

命令参数命令参数说明
-d 或 --dest指定下载文件的保存路径
-r 或 --requirement从一个需求文件中读取要下载的包列表
--no-deps不下载包的依赖项,只下载指定的包
--only-binary只下载二进制包,不下载源代码包
--platform指定目标平台,例如linux_x86_64
--python-version指定Python版本,例如36
--implementation指定Python实现,例如cp,pp,jp,ip等
-abi指定Python ABI,例如cp36m

具体命令如下:

(iwen_search) [iwen@jina-milvus iwen]$ pip download -d /iwen/package -r requirements.txt

-- 将requirements.txt里指定的包名和版本—【可根据需要,编辑requirements.txt,删除不需要打包的包】打包到默认package文件夹下。需要注意的是package这个文件夹需要提前创建好,可以根据自己的要求进行创建.

下载过程如下图所示:

下载结果如下:

  1. [iwen@jina-milvus package]$ ls -lrt
  2. 总用量 2440
  3. -rw-rw-r-- 1 iwen iwen 12155 11月 12 16:19 aiohappyeyeballs-2.4.0-py3-none-any.whl
  4. -rw-rw-r-- 1 iwen iwen 1243212 11月 12 16:19 aiohttp-3.10.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  5. -rw-rw-r-- 1 iwen iwen 86780 11月 12 16:19 anyio-4.4.0-py3-none-any.whl
  6. -rw-rw-r-- 1 iwen iwen 13643 11月 12 16:19 annotated_types-0.7.0-py3-none-any.whl
  7. -rw-rw-r-- 1 iwen iwen 7617 11月 12 16:19 aiosignal-1.3.1-py3-none-any.whl
  8. -rw-rw-r-- 1 iwen iwen 5721 11月 12 16:19 async_timeout-4.0.3-py3-none-any.whl
  9. -rw-rw-r-- 1 iwen iwen 241853 11月 12 16:19 frozenlist-1.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  10. -rw-rw-r-- 1 iwen iwen 16453 11月 12 16:19 exceptiongroup-1.2.2-py3-none-any.whl
  11. -rw-rw-r-- 1 iwen iwen 63001 11月 12 16:19 attrs-24.2.0-py3-none-any.whl
  12. -rw-rw-r-- 1 iwen iwen 124585 11月 12 16:19 multidict-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  13. -rw-rw-r-- 1 iwen iwen 70442 11月 12 16:19 idna-3.10-py3-none-any.whl
  14. -rw-rw-r-- 1 iwen iwen 37438 11月 12 16:19 typing_extensions-4.12.2-py3-none-any.whl
  15. -rw-rw-r-- 1 iwen iwen 10235 11月 12 16:19 sniffio-1.3.1-py3-none-any.whl
  16. -rw-rw-r-- 1 iwen iwen 318659 11月 12 16:19 yarl-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  17. -rw-rw-r-- 1 iwen iwen 208920 11月 12 16:19 propcache-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

三、利用pip install进行离线包安装

具体命令如下:

(iwen_search) [iwen@jina-milvus iwen]$ pip install --no-index --find-links=/iwen/package -r requirements.txt 

首先将package文件夹和requirements.txt拷贝至生产环境:package文件夹可根据自己的需求存放,requirements.txt放在同级目录,相关目录结构如下图:

注:本文转载自blog.csdn.net的满天点点星辰的文章"https://blog.csdn.net/myself88129/article/details/143716544"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top