Python離線安裝包教程分享
Python離線安裝包
下載pip包
pip download 你要下載的包名 -d 下載的路徑 # example 結(jié)果會(huì)下載很多whl包 pip download httpie -d .
pip離線安裝
pip install 包名 # 各種whl 默認(rèn)要安裝的最后一個(gè)安裝 # 或者 pip download -d \home\packs -r requirement.txt
注意:
務(wù)器環(huán)境一般都為linux 環(huán)境,所以我們下載所需包的時(shí)候最好使用自己的虛擬機(jī)或其他相同的環(huán)境來(lái)進(jìn)行下載。
第一步也可以pip freeze --all > requirements.txt
。在項(xiàng)目目錄下新建一個(gè)whls文件夾(用來(lái)存儲(chǔ)我們依賴包)然后在虛擬環(huán)境cmd命令下切換到whls目錄
執(zhí)行 pip freeze --all > requirements.txt 命 令 將安裝包版本信息導(dǎo)入到requireents.txt文件中(該文件位置在執(zhí)行cmd命令當(dāng)前目錄下,也就是whls下); 注意–all參數(shù),加上此參數(shù)會(huì)將setuptools、urllib3包進(jìn)行打包;如果不加,這兩個(gè)不會(huì)打包
離線批量安裝python包
隨著網(wǎng)絡(luò)安全越來(lái)越受重視,很多企業(yè)的開(kāi)發(fā)、測(cè)試和生產(chǎn)環(huán)境都已經(jīng)跟互聯(lián)網(wǎng)隔離,這就導(dǎo)致python無(wú)法在內(nèi)網(wǎng)直接使用pip安裝第三方包,離線安裝成為必備技能。
1 python包常見(jiàn)安裝方法
1.1 直接從python源下載,然后手動(dòng)安裝
適合場(chǎng)景:
- 適合臨時(shí)安裝一兩個(gè)包的場(chǎng)景。
優(yōu)缺點(diǎn):
- 效率低,經(jīng)常會(huì)遇到需要外部依賴包的情況。
1.2 使用 pip 根據(jù)requirements文件下載安裝包,到離線環(huán)境中安裝
適合場(chǎng)景:
- 需要批量安裝第三方包,軟件部署有明確的requirements文件的場(chǎng)景。
優(yōu)缺點(diǎn):
- 可以批量下載和安裝,一次性解決一臺(tái)服務(wù)器上安裝多個(gè)包的問(wèn)題。
2 Python包分類(lèi)和安裝
Python包按照安裝包的方式可以分為:wheel包、源碼包(zip或tar.gz)、egg包。其中,wheel包和源碼包比較常見(jiàn),egg已經(jīng)很少了。
2.1 安裝wheel包
wheel包的命名格式為:{distribution}-{version}(-{build tag})?-{python tag}-{abi tag}-{platform tag}.whl。
名稱 | 對(duì)應(yīng)名稱 | 解釋 |
distribution | mysql_connector | 包名 |
version | 2.1.6 | 版本 |
bulid tag | 備注標(biāo)簽 | 可省略 |
python-tag | cp36 | 表示 cpython 3.6 版本 |
abi-tag | cp36m | abi Application Binary Interface應(yīng)用程序二進(jìn)制接口 |
platform | win_amd64 | platform 還可以是 anywin32 , linux_i386 , linux_x86_64, any 表示 跨平臺(tái) |
到達(dá)路徑后根據(jù)不同文件后綴,操作如下:
pip install **.whl
例如:
pip install JPype1_py3-0.5.5.2-cp35-none-win_amd64.whl
2.2 安裝源碼包(zip或tar.gz)
下載模塊包到安裝地址(壓縮文件zip或tar.gz),進(jìn)行解壓,到達(dá)指定位置進(jìn)入模塊文件夾,執(zhí)行python setup.py install
例如:
- 下載 uwsgi 源碼包
- 解壓 tar -zxvf uwsgi.tar.gz
- 進(jìn)入目錄 cd uwsgi
- 使用python 安裝 python3 setup.py install
2.3 安裝egg包
先下載ez_setup.py,運(yùn)行python ez_setup 進(jìn)行easy_install工具的安裝,之后就可以使用easy_install進(jìn)行安裝package
easy_install packageName easy_install package.egg
3 批量離線安裝包
3.1 制作requirement.txt,導(dǎo)出項(xiàng)目中所有依賴包
比如下載 django 1.8.11版本的包,requirements.txt的內(nèi)容就是:
django==1.8.11
使用 pip freeze 會(huì)輸出所有在本地已安裝的包(但不包括 pip、wheel、setuptools 等自帶包),若需要輸出內(nèi)容與 pip list 一致,需使用 pip freeze -all。
使用方法:
pip freeze > requirements.txt
適用場(chǎng)合:
由于 pip freeze 與 pip list 內(nèi)容區(qū)別不大,所以,若想要用其作為工程依賴包列表,需要配合 Python 虛擬環(huán)境 virtualenv 使用。
3.2 將所有包下載到目標(biāo)目錄中
例如:想將包放在\home\packs目錄下
pip download -d \home\packs -r requirement.txt
3.3 將文件打包后放到離線服務(wù)器上,并進(jìn)行解壓縮
pip install --no-index --find-links=\home\packs -r requirements.txt
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Python?通過(guò)colorama?設(shè)置控制臺(tái)、命令行輸出彩色文字
- 使用Python中的Argparse實(shí)現(xiàn)將列表作為命令行參數(shù)傳遞
- python命令行執(zhí)行腳本找不到模塊ModuleNotFoundError問(wèn)題
- 怎樣用cmd命令行運(yùn)行Python文件
- Python無(wú)法安裝包的一種解決(Requirement already satisfied問(wèn)題)
- Python3.8.2安裝包及安裝教程圖文詳解(附安裝包)
- python pip安裝包出現(xiàn):Failed building wheel for xxx錯(cuò)誤的解決
- win10下Python3.6安裝、配置以及pip安裝包教程
- python命令行安裝包詳解
相關(guān)文章
python讀取二進(jìn)制mnist實(shí)例詳解
這篇文章主要介紹了python讀取二進(jìn)制mnist實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05Pytorch卷積神經(jīng)網(wǎng)絡(luò)遷移學(xué)習(xí)的目標(biāo)及好處
這篇文章主要為大家介紹了Pytorch卷積神經(jīng)網(wǎng)絡(luò)遷移學(xué)習(xí)的目標(biāo)實(shí)現(xiàn)代碼及好處介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05python通過(guò)apply使用元祖和列表調(diào)用函數(shù)實(shí)例
這篇文章主要介紹了python通過(guò)apply使用元祖和列表調(diào)用函數(shù),實(shí)例分析了python中apply方法的使用技巧,需要的朋友可以參考下2015-05-05Python使用docx模塊實(shí)現(xiàn)刷題功能代碼
今天小編就為大家分享一篇Python使用docx模塊實(shí)現(xiàn)刷題功能代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02Python實(shí)現(xiàn)從log日志中提取ip的方法【正則提取】
這篇文章主要介紹了Python實(shí)現(xiàn)從log日志中提取ip的方法,涉及Python文件讀取、數(shù)據(jù)遍歷、正則匹配等相關(guān)操作技巧,需要的朋友可以參考下2018-03-03PyTorch?使用torchvision進(jìn)行圖片數(shù)據(jù)增廣
本文主要介紹了PyTorch?使用torchvision進(jìn)行圖片數(shù)據(jù)增廣,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Django uwsgi Nginx 的生產(chǎn)環(huán)境部署詳解
這篇文章主要介紹了Django uwsgi Nginx 的生產(chǎn)環(huán)境部署詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-02-02