如果高效使用apt-get、pip来下载安装依赖包、软件呢?-阿里云开发者社区

开发者社区> 一颗小树x> 正文

如果高效使用apt-get、pip来下载安装依赖包、软件呢?

简介: 在Python开发中,需要安装一下包、依赖库或软件等,有时出现网络、权限和无法安装等问题困扰着我们,经历过一段时间的洗礼,悟出了一些要点分享给大家
+关注继续查看

前言

在Python开发中,需要安装一下包、依赖库或软件等,有时出现网络、权限和无法安装等问题困扰着我们,经历过一段时间的洗礼,悟出了一些要点分享给大家。

一、pip命令

1)指定国内下载源---加速下载

背景
有时使用pip安装依赖库或软件时,看到10KB~30KB的速度下载,真的是恨铁不成刚,为什么不能快一些呢;明明电脑下载时都有1M~3M的,感到无奈,一直在等待安装。

分析
如果排除是电脑本身网络速度慢问题,那很有可能是安装依赖库或软件是外网的,需要从外网那里获取;这样自然就很慢啦

解决方法
发现问题是需要从外网获取,那么如果国内中有,我们从国内中获取就可以啦;速度会有质的飞跃。

pip install xxxx -i https://pypi.mirrors.ustc.edu.cn/simple

xxxx 为要安装的依赖库或软件名称,例如:要安装numpy,即 pip install numpy -i https://pypi.mirrors.ustc.edu.cn/simple
-i 是指定下载源 ,其后面是下载源的地址 ,即:阿里云 https://pypi.mirrors.ustc.edu.cn/simple

可选的国内源:
(1)阿里云 https://mirrors.aliyun.com/pypi/simple/
(2)豆瓣https://pypi.douban.com/simple/
(3)清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
(4)中国科学技术大学 https://pypi.mirrors.ustc.edu.cn/simple/
(5)华中科技大学https://pypi.hustunique.com/

2)指定安装特定版本的

背景
在安装一下配套的软件(依赖库)时需要考虑版本兼容性,否则很可能导致无法使用

分析
我们首先查清楚依赖的是什么版本,例如需要安装opencv3.4,而不是opencv4.2;然后在pip中指定版本来安装就可以啦

解决方法
先查看本机能安装那些版本的

pip install xxxx==

挑选合适的版本安装

pip install xxxx==3.4.3.18

例如:在python开发环境中安装opencv 3.4.3.18

pip install opencv-python==                       #查看opencv-python有那些版本可以安装
pip install opencv-python==3.4.3.18               #安装3.4.3.18版本的opencv

3)指定Python2或Python3安装

背景
在Ubuntu系统中,默认为我们安装了两个Python;一个是Python2.7,另一个是Python3.x  ,这里温馨提醒一下不要擅自卸载其中一个Python,很可能导致系统出错最终重装系统收场;有时候需要安装在安装在Python3中,而不是Python2。

分析
如果有多个版本的Python,那我们在安装软件时指定Python的版本来安装就可以啦

解决方案
 指定Python2.7安装依赖库或软件

python2.7 -m pip install xxxx

或 python2 -m pip install xxxx

4)pip使用是遇到权限问题

背景
 在Ubuntu中,使用pip安装一些一些依赖库时,会报权限问题;这些可能会想到用sudo不久可以了吗?是的,部分情况下确实可以使用sudo来安装。但是在不能使用sudo的情况下,如果解决这个权限问题呢?

分析
例如在docker中使用pip安装,如果使用了sudo会导致部分资源无权限使用

解决方案
添加--user

pip install opencv-python==3.4.3.18    --user

彩蛋----查看python安装了哪些库、模块

1)pip list  或者  pip freeze all
2)help('modules')
3)如果是windows的系统,参考:https://www.cnblogs.com/gitwow/p/10706257.html

二、apt-get命令

1)修改国内软件源

背景
有时使用apt-get安装依赖库或软件时,看到15KB~40KB的速度下载,真的是恨铁不成刚,为什么不能快一些呢;明明电脑下载时都有1M~3M的,感到无奈,一直在等待安装。

分析
如果排除是电脑本身网络速度慢问题,那很有可能是安装依赖库或软件是外网的,需要从外网那里获取;这样自然就很慢啦

解决方法
发现问题是需要从外网获取,那么如果国内中有,我们从国内中获取就可以啦;速度会有质的飞跃。
具有教程,参考我这篇博客:https://guo-pu.blog.csdn.net/article/details/88808210

2)升级apt-get为多线程下载

背景
apt-get默认是单线程下载的,在解决了网络、软件源等问题后,把apt-get升级为多线程apt-fast 

分析
在Linux中,默认的apt-get install 有时候会下载非常慢,尤其是添加的一些ppa去下载。发现apt-fast是个好东西,apt-fast 通过使用多线程下载来给apt-get 提速。经过测试效果出奇的好。
apt-fast  shell 封装器通过多个连接同时下载一个包来加速 apt-get/apt 和 aptitude 命令,进而使得自己的工作效率得到提升。

解决方案
安装apt-fast
具有教程,参考我这篇博客:https://guo-pu.blog.csdn.net/article/details/103477431

希望对你有帮助;
如果发现不对的地方,欢迎大家指正。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Mac使用apt-get
和Linux系统不同的是,Mac系统默认是不带有apt-get软件包工具的,所以要想在Mac上使用上方便的apt-get就需要自己来安装它。 这里我们需要借助一个强大的工具-fink. 首先我们需要下载它,点击右侧链接进行下载,Fink相关文件下载 里面有两个文件,一个是fink,一个是Xquartz,即X11。 之后遵循以下步骤即可: 1.双击XQuartz-2.7.8.d
4922 0
Ubuntu 系统实例 Apt-get 安装软件及问题处理
本文介绍主要介绍 Ubuntu 系统的实例 Apt-get 在线安装软件使用方法及常见问题处理。
857 0
9、web爬虫讲解2—urllib库爬虫—实战爬取搜狗微信公众号—抓包软件安装Fiddler4讲解
封装模块 #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib from urllib import request import json import random import re import urllib.
2522 0
木马频繁造假 伪装成多个安全软件钓鱼
拿到一个“半成品”样本,病毒在文件属性中假冒360安全卫士,但图标明显不对。   运行后,还会假冒毒霸的病毒警告:   这里看一下正常的毒霸实时监控发现病毒时的窗口:   伪造的还挺象那么回事儿,只是文字太多露出马脚。
594 0
+关注
一颗小树x
计算机专业,从事无人驾驶和车路协同方向开发,主要负责感知模块;喜欢写博客和学习新知识。华为云-云享专家,华为认证AI工程师,华为云产品”四星级“体验官;GitChat认证作者。AI大学-高阶学员。喜欢这样的一句话:扬在脸上的自信,藏在心底的善良,溶在血液里的骨气,刻在生命里的坚强。
11
文章
3
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载