You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将pip已安装包复制至无网络环境?

没问题,这种离线迁移Python包的需求太常见了,我给你两种实用方案,你可以根据场景选择:

方案1:提前下载所有依赖包(推荐,兼容性最好)

这种方法先把需要的包都下载到本地,再复制到无网环境安装,能避免直接复制包文件的兼容性问题,尤其适合跨系统或不同Python版本的场景:

  • 第一步:在有网的源环境生成依赖清单
    先导出当前环境的所有包到requirements.txt:
    pip freeze > requirements.txt
    
  • 第二步:下载所有包到指定本地目录
    用pip download命令把清单里的包都下载到一个文件夹(比如叫packages):
    pip download -r requirements.txt -d ./packages
    
    这里-d参数用来指定下载的目标目录,运行完后packages文件夹里会有所有需要的.whl或.tar.gz格式的包文件。
  • 第三步:复制文件到目标环境
    把requirements.txt和packages文件夹一起拷贝到无网的目标机器上,比如用U盘、内网传输等方式。
  • 第四步:在目标环境离线安装
    进入目标环境,运行以下命令安装,告诉pip只从本地文件夹找包,不要去PyPI下载:
    pip install -r requirements.txt --no-index --find-links=./packages
    
方案2:直接复制已安装的包文件(临时快速迁移)

如果源和目标环境的Python版本、操作系统完全一致,可以直接复制已安装的包文件,省得下载,但要注意兼容性问题(比如带C扩展的包可能会报错):

  • 第一步:找到源环境的包安装目录
    打开Python终端,运行以下命令获取site-packages路径(包都存在这里):
    import site
    print(site.getsitepackages())
    
    或者用pip show查看单个包的安装位置,比如:
    pip show requests
    
    输出里的Location字段就是该包的安装目录。
  • 第二步:复制对应的包文件
    从site-packages里复制两个关键部分:
    • 包的代码文件夹(比如requests文件夹)
    • 对应的元数据文件夹(比如requests-2.31.0.dist-info)
      这两个都要复制,不然pip可能识别不到这个包。
  • 第三步:粘贴到目标环境的site-packages目录
    把复制的文件夹粘贴到目标环境的site-packages目录里,和源环境的路径对应。
  • 第四步:验证安装
    在目标环境打开Python终端,尝试import包,比如import requests,如果没有报错就说明成功了。

注意事项

  • 对于带C扩展的包(比如numpy、pandas、scipy这类),直接复制很容易出问题,因为它们是编译后的二进制文件,依赖系统环境,这种情况一定要用方案1。
  • 如果源环境本身是离线的,你可以找一台和源环境同Python版本、同操作系统的有网机器,用方案1下载包,再复制到源/目标环境。

内容的提问来源于stack exchange,提问作者user7420658

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:18:35