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


Posted in Python onJuly 07, 2019

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

方法一:

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 相关文章推荐
python通过cookie模拟已登录状态的初步研究
Nov 09 Python
利用Python脚本生成sitemap.xml的实现方法
Jan 31 Python
Python中进程和线程的区别详解
Oct 29 Python
python编程使用协程并发的优缺点
Sep 20 Python
python 图片去噪的方法示例
Jul 09 Python
使用Tensorflow将自己的数据分割成batch训练实例
Jan 20 Python
python实现五子棋程序
Apr 24 Python
Python 如何对文件目录操作
Jul 10 Python
Python实现自动装机功能案例分析
Oct 22 Python
Python实现简单猜数字游戏
Feb 03 Python
4种非常实用的python内置数据结构
Apr 28 Python
python使用PySimpleGUI设置进度条及控件使用
Jun 10 Python
python 实现将多条曲线画在一幅图上的方法
Jul 07 #Python
python 实现在一张图中绘制一个小的子图方法
Jul 07 #Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
Jul 07 #Python
python画双y轴图像的示例代码
Jul 07 #Python
Python 多个图同时在不同窗口显示的实现方法
Jul 07 #Python
python绘制多个子图的实例
Jul 07 #Python
python 含子图的gif生成时内存溢出的方法
Jul 07 #Python
You might like
写一个用户在线显示的程序
2006/10/09 PHP
php+mysql实现无限级分类 | 树型显示分类关系
2006/11/19 PHP
一个简洁的PHP可逆加密函数(分享)
2013/06/06 PHP
PHP设计模式之观察者模式(Observer)详细介绍和代码实例
2014/04/08 PHP
Yii2.0 模态弹出框+ajax提交表单
2016/05/22 PHP
laravel框架实现敏感词汇过滤功能示例
2020/02/15 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
js网页中的(运行代码)功能实现思路
2013/02/04 Javascript
js模拟select下拉菜单控件的代码
2013/05/08 Javascript
JavaScript正则表达式中的ignoreCase属性使用详解
2015/06/16 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
jQuery使用$.ajax进行即时验证的方法
2015/12/08 Javascript
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
JavaScript中Array的实用操作技巧分享
2016/09/11 Javascript
使用JavaScript获取Request中参数的值方法
2016/09/27 Javascript
Angular2数据绑定详解
2017/04/18 Javascript
js如何获取网页所有图片
2017/05/12 Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
2018/08/25 Javascript
在Bootstrap开发框架中使用dataTable直接录入表格行数据的方法
2018/10/25 Javascript
JS实现简单的抽奖转盘效果示例
2019/02/16 Javascript
小程序实现搜索框
2020/06/19 Javascript
[05:13]2018DOTA2亚洲邀请赛主赛事第二日战况回顾 LGD、VG双雄携手晋级
2018/04/05 DOTA
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
python基于mysql实现的简单队列以及跨进程锁实例详解
2014/07/07 Python
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
django框架如何集成celery进行开发
2017/05/24 Python
python MysqlDb模块安装及其使用详解
2018/02/23 Python
Pyqt QImage 与 np array 转换方法
2019/06/27 Python
Python 列表的清空方式
2020/01/13 Python
英国网络托管和域名领导者:Web Hosting UK
2017/10/15 全球购物
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
北京奥运会主题口号
2014/06/13 职场文书
行政撤诉申请书
2015/05/18 职场文书