linux环境中没有网络怎么下载python

所属分类: 脚本专栏 / python 阅读数: 1501
收藏 0 赞 0 分享

有时候在无法联网的情况下需要搭建环境,且必须使用之前的环境,因为你的代码需要在同样的环境下运行。这样方便开发

方法一:

1.下载指定的包到指定文件夹。
 pip list #查看安装的包
  pip freeze > requirements.txt  将已经通过pip安装的包的名称记录到 requirements.txt文件中
 创建存放安装包的目录:mkdir /packs
      pip install  --download  /packs pandas(存放一个pandas包)
             或
       pip install  --download  /packs -r requirements.txt(存放requirements.txt列出的所有包)
2.安装指定的离线包
  pip install  --no-index  --find-links=/packs/  pandas 或
  pip install  --no-index  --find-links=/packs/  -r  requirements.txt  (也可能是 --find-link)

但是这种方法经过本人测试会出现很多问题,比如在 pip install --download /packs -r requirements.txt该操作可能会出现无法下载某些包,而且下载完成包后在新的服务器上安装可能缺少依赖关系安装不成功。

方法二:

那就是利用集成环境---Anaconda,这个安装的话超级简单,因为这是一个封装好的环境,你之后下载安装的python第三方包都在这个环境下,这样你只需把安装好的Anconda包拷贝到未联网的服务器下就可以了(当然需要在.bashrc上配置)。

第一步现在安装Anconda:

从官网下载Anconda安装包,这里我用的是Anaconda3-5.2.0-Linux-x86_64.sh。

bash Anaconda3-5.2.0-Linux-x86_64.sh

一路Enter,Y,然后提醒你配置环境

echo 'export PATH="/home/wwk/anaconda3/bin:$PATH"' >> ~/.bashrc
source .bashrc

当然中间还让你选择安装路径,一般选择默认就OK,现在验证是否安装成功

conda -V

如果出现版本号,那么就成功了。

第二步安装自己需要的包:

Anconda 里面集成pip,和 conda,当然这两个都可以下载各种包,pip isntall somepackage ,conda install somepackage但是用conda命令下载的可能会出现一个问题 ,你所需要的安装包不一定会命中(因为国内镜像通道可能找不到),以py2neo包为例

wwk@wwk-Aspire-V3-572G:~$ conda install py2neo
Fetching package metadata .............
 
PackageNotFoundError: Packages missing in current channels:
      
 - py2neo
 
We have searched for the packages in the following channels:
      
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
 - https://repo.continuum.io/pkgs/main/linux-64
 - https://repo.continuum.io/pkgs/main/noarch
 - https://repo.continuum.io/pkgs/free/linux-64
 - https://repo.continuum.io/pkgs/free/noarch
 - https://repo.continuum.io/pkgs/r/linux-64
 - https://repo.continuum.io/pkgs/r/noarch
 - https://repo.continuum.io/pkgs/pro/linux-64
 - https://repo.continuum.io/pkgs/pro/noarch

那么我们有两种办法:

1、最直接的话我们从其他途径直接下载我们需要的安装包,比如从github下载zip,tar.gz等压缩包解压后进入解压目录 使用python setup.py install命令安装(注意此时需要 which python看下环境是否在anconda中,这样才能确保安装到anconda环境中),其实还可以直接pip(anconda内嵌)安装也比较方便。

2、那么接着上面出现的问题解决,输入 :anaconda search -t conda py2neo

 
wwk@wwk-Aspire-V3-572G:~$ anaconda search -t conda py2neo
Using Anaconda API: https://api.anaconda.org
Packages:
   Name           | Version | Package Types  | Platforms    | Builds  
   ------------------------- |  ------ | --------------- | --------------- | ----------
   auto/py2neo        |  1.6.4 | conda      | linux-64, linux-32 | py27_0  
                     : http://nigelsmall.com/py2neo
   bioconda-legacy/py2neo  |  3.1.2 | conda      | linux-64, osx-64 | py36_0, py27_0, py35_0, py34_0
   cmckeague/py2neo     |   3b1 | conda      | linux-armv7l  | py27_0  
                     : Python client library and toolkit for Neo4j
   conda-forge/py2neo    | 4.0.0b2 | conda      | linux-64, win-32, osx-64, win-64 | py36_0, py35_0, py27_0
                     : Python client library and toolkit for Neo4j
   ivoflipse/py2neo     |  1.6.4 | pypi, conda   | win-64     | py27_0  
                     : Python client library for the Neo4j REST server
   mutirri/py2neo      |  2.0.8 | conda      | linux-64, win-32, win-64, osx-64 | py27_0, py33_0, py35_0, py34_0
                     : Python client library and toolkit for Neo4j
Found 6 packages
 
Run 'anaconda show <USER/PACKAGE>' to get installation details

之后输入:anaconda show conda-forge/py2neo 就可以看到你要安装包的通道

wwk@wwk-Aspire-V3-572G:~$ anaconda show conda-forge/py2neo
Using Anaconda API: https://api.anaconda.org
Name:  py2neo
Summary: Python client library and toolkit for Neo4j
Access: public
Package Types: conda
Versions:
  + 4.0.0b2
  + 3.1.2
 
To install this package with conda run:
   conda install --channel https://conda.anaconda.org/conda-forge py2neo

根据最后一行的提示我们copy输入即可

wwk@wwk-Aspire-V3-572G:~$ conda install --channel https://conda.anaconda.org/conda-forge py2neo
Fetching package metadata ...............
Solving package specifications: .
 
Package plan for installation in environment /home/wwk/anaconda3:
 
The following NEW packages will be INSTALLED:
 
  neo4j-python-driver: 1.1.0rc1-py36_0    conda-forge                      
  py2neo:       4.0.0b2-py36_0    conda-forge                      
 
The following packages will be UPDATED:
 
  conda:        4.3.30-py36h5d9f9f4_0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free --> 4.5.11-py36_0 conda-forge
  conda-env:      2.6.0-0        https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free --> 2.6.0-1    conda-forge
 
Proceed ([y]/n)? y
 
conda-env-2.6. 100% |#####################################################################| Time: 0:00:00  1.34 MB/s
neo4j-python-d 100% |#####################################################################| Time: 0:00:00 72.70 kB/s
py2neo-4.0.0b2 100% |#####################################################################| Time: 0:00:00 176.24 kB/s
conda-4.5.11-p 100% |#####################################################################| Time: 0:00:02 230.86 kB/s

最后不要忘记打开python 环境导入包试下,是否成功。

上面这些操作也就是在有网的环境下完全布置好你的运行环境。那么恭喜你已经完成了99%了

第三步:把安装后的anconda3压缩打包好anconda3.zip,拷贝到你要安装的未联网的服务器上,我放在了/home/wwk/anaconda3

最后:

unizp anaconda3.zip -d /home/wwk/anaconda3
vim .bashrc
 
# added by Anaconda3 installer
export PATH="/home/wwk/anaconda3/bin:$PATH"

 

更多精彩内容其他人还在看

Python常见加密模块用法分析【MD5,sha,crypt模块】

这篇文章主要介绍了Python常见加密模块用法,结合实例形式较为详细的分析了MD5,sha与crypt模块加密的相关实现方法与操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

Python向日志输出中添加上下文信息

这篇文章主要介绍了Python向日志输出中添加上下文信息的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Python实现的简单dns查询功能示例

这篇文章主要介绍了Python实现的简单dns查询功能,结合实例形式分析了Python基于socket模块的dns信息查询实现技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

利用Anaconda完美解决Python 2与python 3的共存问题

Anaconda 是 Python 的一个发行版,如果把 Python 比作 Linux,那么 Anancoda 就是 CentOS 或者 Ubuntu,下面这篇文章主要给大家介绍了利用Anaconda完美解决Python 2与python 3共存问题的相关资料,文中介绍的非常详
收藏 0 赞 0 分享

Python随机读取文件实现实例

这篇文章主要介绍了Python随机读取文件的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

用生成器来改写直接返回列表的函数方法

下面小编就为大家带来一篇用生成器来改写直接返回列表的函数方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

python爬虫入门教程--快速理解HTTP协议(一)

http协议是互联网里面最重要,最基础的协议之一,我们的爬虫需要经常和http协议打交道。下面这篇文章主要给大家介绍了关于python爬虫入门之快速理解HTTP协议的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
收藏 0 赞 0 分享

老生常谈Python进阶之装饰器

下面小编就为大家带来一篇老生常谈Python进阶之装饰器。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅谈Python基础之I/O模型

下面小编就为大家带来一篇浅谈Python基础之I/O模型。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

python如何获取服务器硬件信息

这篇文章主要为大家详细介绍了python获取服务器硬件信息的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多