python离线安装第三方包
目錄
第一種:通過pip離線安裝
第二種:遷移虛擬環(huán)境
因?yàn)榘踩?#xff0c;有些服務(wù)器是不允許訪問外網(wǎng)的,所以我們沒辦法通過pip做在線安裝,那么這種情況只能采用離線的方式。
第一種:通過pip離線安裝
思路就是,先在有外網(wǎng)的服務(wù)器上,通過pip在線安裝第三方包,注意:這里的系統(tǒng)和python版本要和離線服務(wù)器的一致,不然會出現(xiàn)各種版本不一致問題。
大體步驟如下:
先看下系統(tǒng):
[root@plugins ~]# cat /proc/version Linux version 3.10.0-1062.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Wed Aug 7 18:08:02 UTC 2019然后安裝python,我這里裝的是pypy3:
(test) [root@plugins opt]# python Python 3.7.13 (7e0ae751533460d5f89f3ac48ce366d8642d1db5, Mar 29 2022, 06:03:31) [PyPy 7.3.9 with GCC 10.2.1 20210130 (Red Hat 10.2.1-11)] on linux Type "help", "copyright", "credits" or "license" for more information. >>>>強(qiáng)烈推薦創(chuàng)建一個(gè)python的虛擬環(huán)境,保持隔離性,會省去很多干擾,比如創(chuàng)建一個(gè)名為test的虛擬環(huán)境:
python3 -m venv test然后激活這個(gè)虛擬環(huán)境:
source test/bin/activate在這個(gè)虛擬環(huán)境里面,下載我們需要的包:
從私服下載指定的第三方包,-i用來指定下載源,--trusted-host必須有 pip download -i http://172.17.162.124:8081/repository/pypi-group/simple/ -d modules -r requirements.txt --trusted-host 172.17.162.124下載源就是python包的倉庫,外部的和私服都可以,-r requirements.txt 是我們需要下載哪些包,都可以在這里指定。
然后將下載的包,傳到離線服務(wù)器,在離線服務(wù)器通過pip安裝,強(qiáng)調(diào)離線服務(wù)器的系統(tǒng)和python版本一定和我們下載包的環(huán)境一致。
將下載好的包,傳到服務(wù)器,通過以下命令本地安裝,--find-links為包的本地路徑 pip install --no-index --find-links=modules -r requirements.txt正常情況下,如果沒有錯(cuò)誤的話,就是成功了,然后我在安裝pandas的時(shí)候就失敗了,因?yàn)槭窃窗惭b,未能成功構(gòu)建,折騰了幾天,換個(gè)思路,遷移虛擬環(huán)境。
第二種:遷移虛擬環(huán)境
我們在前面創(chuàng)建了虛擬環(huán)境test,其實(shí)就是個(gè)test目錄,打包,整個(gè)傳到離線服務(wù)器,但是不能直接使用,需要做以下修改:
1、修改test/bin/下activate文件中參數(shù)VIRTUAL_ENV,將其修改成離線服務(wù)器的完整路徑:
VIRTUAL_ENV="/opt/test" export VIRTUAL_ENV就是test的路徑。
2、修改bin下工具的python路徑,將其修改成離線服務(wù)器python路徑,如pip的,打開pip文件修改:
#!/opt/test/bin/pypy3 # -*- coding: utf-8 -*- import re import sys from pip._internal.cli.main import main if __name__ == '__main__':sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])sys.exit(main())修改第一行,其他工具類似。
3、檢查虛擬環(huán)境中python可執(zhí)行文件是否可用,如下:
?主要是pypy3這個(gè)軟連接,指向的改為本機(jī)的python路徑,軟連接的話,要修改,需要先刪除:
rm pypy3這里要小心,不要?rm pypy3/ 就是不要帶"/",不然會把原始文件刪掉。
然后創(chuàng)建軟連接:
ln -s pypy3 /opt/pypy3.7-v7.3.9-linux64/bin/pypy3基本上做到這里,就算是遷移完成了,可以跑python程序了。
========================================================
有的還需要修改sys.path,我這邊目前暫未需要。
總結(jié)
以上是生活随笔為你收集整理的python离线安装第三方包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python安装第三方包_python
- 下一篇: python 导入第三方包_Python