• python使用pip离线安装库


    一、前言及环境

    1. 场景及整体思路

    最近在做一个大数据项目,开发过程中用自己的机子安装了很多库,开发完之后需要部署到客户那边的环境中,但是客户那边的环境是不能联网的,于是就需要离线进行库的安装。

    上网搜了一下,大概思路是:

    • 从可以联网电脑导出库的名称到文件;
    • 下载指定库到指定文件夹;
    • 将库名称文件和安装包拷贝到离线环境进行安装

    整体流程如下图所示:

    未命名文件

    整个流程主要使用到库管理工具pip,我用的是python安装完已经存在的pip,没有pip的可自行安装。

    2. 环境

    • win10 64bit
    • python 2.7.15
    • pip 18.1 for python 2.7

    注意:后面发现很多问题都是pip版本太低造成的,所以在往下做之前,可以先升级一下pip为最新版本:

    python -m pip install -U pip

    二、联网下载库

    1. 导出库信息

    pip freeze > requirements.txt

    这个命令是将已经通过pip安装的包的名称记录到requirements.txt文件中。

    导出这个文件后,编辑文件,留下你需要的库,其他删除。

    2. 下载库安装包

    pip download D:packages -r requirements.txt

    注意:win10有可能因为写入权限的问题导致无法操作成功,可以直接进入目标文件夹然后执行:pip download -r requirements.txt

    将requirements.txt中列出来的库下载到packages文件夹。

    这里要注意,因为我的pip版本比较新,所以用的download,据说老一点的版本应该是install --download:

    pip install --download D:packages -r requirements.txt

    注意:如果requirements.txt里面存在不能通过pip安装的库,下载过程会报错。

    三、离线安装库

    将requirements.txt和packages文件夹拷贝到需要离线安装的电脑,通过以下命令进行安装:

    pip install --no-index --find-links=D:packages -r requirements.txt

    根据pip版本不同,里面的参数有可能是--find-link。

    四、参考

    1. pip下载保存Python包,pip离线安装

    (完)

  • 相关阅读:
    ES6中对象新增的方法
    ES6中数组新增的方法超级好用
    让你轻松看懂defer和async
    es6新增的运算符链判断运算符的诞生[?.]和null的判断运算符??
    学习React中的jsx保证你看的明明白白
    js中forEach的用法、forEach如何跳出循环、forEach与for之间的区别
    EM算法学习笔记
    macOS使用Homebrew安装包失败,报错:tar: Error opening archive: Failed to open
    深度网络重参数化
    逻辑回归学习笔记
  • 原文地址:https://www.cnblogs.com/harrymore/p/9860411.html
Copyright © 2020-2023  润新知