使用pip或conda离线下载安装包,使用pip或conda安装离线安装包

使用pip或conda离线下载安装包,使用pip或conda安装离线安装包

一、使用pip离线下载安装包

1. 在有网络的机器上下载包和依赖

  • 使用pipdownload命令下载所需的包及其依赖。例如,要下载requests包,可以使用命令pip download requests。这会下载requests包及其所有依赖到当前目录
  • 如果需要下载特定版本的包,可以使用pip download <package_name>==<version>命令。
  • 如果需要下载多个包或整个项目的依赖,可以先创建一个requirements.txt文件列出所有依赖及其版本,然后使用pip download -r requirements.txt命令下载所有依赖。
  • 想把包下载到特定目录则:pip download requests -d packages

2. 传输离线安装包

将下载的.whl.tar.gz等离线安装包文件通过USB驱动器、SCP、FTP或其他任何方法传输到离线的目标机器。

二、在目标机器上离线安装pip包

  1. 安装.whl文件
    转到包含下载的.whl文件的目录。
    使用pip命令从本地文件安装,例如pip install <package_name>-<version>.whl
  2. 安装.tar.gz或.zip源码包
    对于.tar.gz.zip等源码包,需要先解压,然后进入解压后的目录。
    在解压后的目录中,运行python setup.py install命令进行安装。
  3. 使用requirements.txt文件安装多个包
    如果已经通过pip download -r requirements.txt获取了完整的依赖链,可以直接在目标机器上使用命令pip install --no-index --find-links=<path_to_packages_folder> -r requirements.txt进行安装。这里的是包含离线安装包的本地文件夹路径。

三、使用conda离线下载安装包

虽然问题主要询问pip的操作,但conda也是一种常用的Python包管理工具,支持离线安装。以下是conda离线安装的基本步骤:

1. 在有网络的机器上下载conda包

  • 使用condaconda install --download-only <package_name>命令下载包但不实际安装。但需要注意的是,conda官方并不直接支持像pip那样的download命令,因此这里提到的是一个变通方法。
  • 使用如下命令可以把包放到特定的directory目录中(但是这条命令不太好用,因为你指定的directory必须是conda希望的包的下载路径,所以用上面的命令即可。)conda install <package_name> --download-only -p <directory>
  • 或者,可以使用conda的conda pack工具来打包整个conda环境,包括所有安装的包和依赖。

2. 传输conda包或环境包

  • 将下载的conda包或打包的环境文件传输到离线的目标机器。

3. 在目标机器上安装conda包或解压环境包

  • 对于单独下载的conda包。
    • conda install --use-local -p <directory> <package_name>
    • 例如:conda install --use-local -p /anaconda3/pkgs numpy
  • 对于使用conda pack打包的环境文件,可以在目标机器上解压,并按照conda环境的常规方法激活和使用。

注意事项

  1. 确保目标机器和用于下载离线包的机器上的Python版本以及操作系统架构(如32位与64位)一致,否则可能导致兼容性问题。
  2. 在安装过程中,记录安装信息(如使用--record选项)可能有助于后续的卸载和清理工作。
  3. 当需要更新或添加新的离线包时,重复上述下载和安装过程,并注意检查新旧版本之间的依赖变化。

比如我现在运行命令

py 复制代码
conda install --download-only debugpy

其就可以自动把debugpy和其相关的安装包下载下来了。(在==/anaconda3/pkgs里能找到相关安装包==)

相关推荐
kali-Myon3 小时前
BaseCTF-web-Week1
前端·学习·安全·web安全·php·web
梆子井欢喜坨6 小时前
《Cloud Native Data Center Networking》(云原生数据中心网络设计)读书笔记 -- 05网络虚拟化
网络·云原生·php
千呼收银系统源码7 小时前
收银系统源码-千呼新零售2.0【线下促销】
开源·php·零售
new_一个对象8 小时前
掌握ThinkPHP6中的数据验证技巧,提升开发效率
php·电商系统·crmeb
818源码资源站9 小时前
PHP易支付系统,支付系统源码下载,已测试,带多个支付接口
开发语言·php
空暝9 小时前
SSRF - 服务器端请求伪造
服务器·web安全·php
Xerale20 小时前
实现微信公众号的生成二维码,二维码和图片合并
前端·笔记·微信·php·laravel
ziyu_jia20 小时前
面向对象编程:深入PHP的封装、继承和多态性!
开发语言·php
BKN71120 小时前
SSRF+Redis+Fastcgi
网络·redis·web安全·网络安全·php
德迅云安全小李1 天前
网络防火墙的主要功能及其弊端
服务器·网络·php