Python离线安装第三方库详细操作流程

 更新时间:2023年11月13日 10:19:09   作者:胡八一  
在使用Python开发过程中,我们经常需要使用各种第三方库来扩展Python的功能,这篇文章主要给大家介绍了关于Python离线安装第三方库的相关资料,需要的朋友可以参考下

1、场景介绍

在一些服务器上,我们搭建完Python环境之后,因为服务器的网络限制原因,不能直接通过pip命令下载安装Python的依赖包。
因此,我们需要在可以正常上网的服务器上下载好所需的依赖包文件,然后拷贝到目标服务器,通过pip在目标服务器上进行安装。

2、准备requirements.txt文件

requirements.txt文件罗列的是依赖包列表,表示你要下载的依赖包以及对应的版本。
该文件可以通过两种方式创建,分别是pip命令创建和手工创建。

jupyter==1.0.0
notebook==6.1.0

(1)pip命令创建requirements.txt,可以把当前服务器的Python依赖包生成列表到requirements.txt文件中。
【pip list】
【pip freeze >requirements.txt】

(2)手工创建requirements.txt,直接新建一个requirements.txt文件,然后按照格式填写所需依赖包以及对应版本号。

3、下载依赖包

注意:该步骤需要在可以正常上网的服务器上下载。下载的依赖包文件如图2所示。

pip download -r requirements.txt -d packages/ -i https://pypi.tuna.tsinghua.edu.cn/simple

其中:(packages/是要生成的文件夹,存放下载的依赖包文件;https://pypi.tuna.tsinghua.edu.cn/simple是镜像源地址)。

4、安装依赖包

准备好依赖包之后,就可以在无法使用pip命令下载安装依赖包的目标服务器上进行安装了。

使用命令之前,需要把packsges文件夹、requirements.txt文件拷贝到目标服务器,下面以requests依赖包为例。

pip install --no-index --find-links=./packages -r ./requirements.txt

(其中:./packsges是依赖包的所在路径;./requirements.txt是依赖包的列表路径)。

D:\zjj\pip>pip list
Package                           Version
--------------------------------- ---------
anyio                             3.7.1
argon2-cffi                       21.3.0
argon2-cffi-bindings              21.2.0
arrow                             1.2.3
asttokens                         2.2.1
async-lru                         2.0.4
attrs                             23.1.0
Babel                             2.12.1
backcall                          0.2.0
beautifulsoup4                    4.12.2
bleach                            6.0.0
certifi                           2023.7.22
cffi                              1.15.1
charset-normalizer                3.2.0
colorama                          0.4.6
comm                              0.1.3
debugpy                           1.6.7
decorator                         5.1.1
defusedxml                        0.7.1
distlib                           0.3.7
exceptiongroup                    1.1.2
executing                         1.2.0
fastjsonschema                    2.18.0
filelock                          3.12.2
fqdn                              1.5.1
idna                              3.4
importlib-metadata                6.8.0
importlib-resources               6.0.0
ipykernel                         6.25.0
ipython                           8.12.2
ipython-genutils                  0.2.0
ipywidgets                        8.0.7
isoduration                       20.11.0
jedi                              0.19.0
Jinja2                            3.1.2
json5                             0.9.14
jsonpointer                       2.4
jsonschema                        4.18.4
jsonschema-specifications         2023.7.1
jupyter_client                    8.3.0
jupyter-console                   6.6.3
jupyter-contrib-core              0.4.2
jupyter_core                      5.3.1
jupyter-events                    0.6.3
jupyter-highlight-selected-word   0.2.0
jupyter-lsp                       2.2.0
jupyter-nbextensions-configurator 0.6.3
jupyter_server                    2.7.0
jupyter_server_terminals          0.4.4
jupyterlab                        4.0.3
jupyterlab-pygments               0.2.2
jupyterlab_server                 2.24.0
jupyterlab-widgets                3.0.8
lxml                              4.9.3
MarkupSafe                        2.1.3
matplotlib-inline                 0.1.6
mistune                           3.0.1
nbclient                          0.8.0
nbconvert                         7.7.3
nbformat                          5.9.1
nest-asyncio                      1.5.7
notebook                          7.0.0
notebook_shim                     0.2.3
overrides                         7.3.1
packaging                         23.1
pandocfilters                     1.5.0
parso                             0.8.3
pickleshare                       0.7.5
pip                               23.2.1
pipenv                            2023.7.23
pkgutil_resolve_name              1.3.10
platformdirs                      3.10.0
prometheus-client                 0.17.1
prompt-toolkit                    3.0.39
psutil                            5.9.5
pure-eval                         0.2.2
pycparser                         2.21
Pygments                          2.15.1
python-dateutil                   2.8.2
python-json-logger                2.0.7
pytz                              2023.3
pywin32                           306
pywinpty                          2.0.11
PyYAML                            6.0.1
pyzmq                             25.1.0
qtconsole                         5.4.3
QtPy                              2.3.1
referencing                       0.30.0
requests                          2.31.0
rfc3339-validator                 0.1.4
rfc3986-validator                 0.1.1
rpds-py                           0.9.2
Send2Trash                        1.8.2
setuptools                        68.0.0
six                               1.16.0
sniffio                           1.3.0
soupsieve                         2.4.1
stack-data                        0.6.2
terminado                         0.17.1
tinycss2                          1.2.1
tomli                             2.0.1
tornado                           6.3.2
traitlets                         5.9.0
typing_extensions                 4.7.1
uri-template                      1.3.0
urllib3                           2.0.4
virtualenv                        20.24.2
virtualenv-clone                  0.5.7
wcwidth                           0.2.6
webcolors                         1.13
webencodings                      0.5.1
websocket-client                  1.6.1
widgetsnbextension                4.0.8
zipp                              3.16.2

D:\zjj\pip>pip install --no-index --find-links=./packages -r ./requirements.txt
Looking in links: ./packages
Processing d:\zjj\pip\packages\requests-2.28.2-py3-none-any.whl (from -r ./requirements.txt (line 1))
Requirement already satisfied: charset-normalizer<4,>=2 in d:\environment\python\python3.8.10\lib\site-packages (from requests==2.28.2->-r ./requirements.txt (line 1)) (3.2.0)
Requirement already satisfied: idna<4,>=2.5 in d:\environment\python\python3.8.10\lib\site-packages (from requests==2.28.2->-r ./requirements.txt (line 1)) (3.4)
Processing d:\zjj\pip\packages\urllib3-1.26.16-py2.py3-none-any.whl (from requests==2.28.2->-r ./requirements.txt (line 1))
Requirement already satisfied: certifi>=2017.4.17 in d:\environment\python\python3.8.10\lib\site-packages (from requests==2.28.2->-r ./requirements.txt (line 1)) (2023.7.22)
Installing collected packages: urllib3, requests
  Attempting uninstall: urllib3
    Found existing installation: urllib3 2.0.4
    Uninstalling urllib3-2.0.4:
      Successfully uninstalled urllib3-2.0.4
  Attempting uninstall: requests
    Found existing installation: requests 2.31.0
    Uninstalling requests-2.31.0:
      Successfully uninstalled requests-2.31.0
Successfully installed requests-2.28.2 urllib3-1.26.16

D:\zjj\pip>pip list
Package                           Version
--------------------------------- ---------
anyio                             3.7.1
argon2-cffi                       21.3.0
argon2-cffi-bindings              21.2.0
arrow                             1.2.3
asttokens                         2.2.1
async-lru                         2.0.4
attrs                             23.1.0
Babel                             2.12.1
backcall                          0.2.0
beautifulsoup4                    4.12.2
bleach                            6.0.0
certifi                           2023.7.22
cffi                              1.15.1
charset-normalizer                3.2.0
colorama                          0.4.6
comm                              0.1.3
debugpy                           1.6.7
decorator                         5.1.1
defusedxml                        0.7.1
distlib                           0.3.7
exceptiongroup                    1.1.2
executing                         1.2.0
fastjsonschema                    2.18.0
filelock                          3.12.2
fqdn                              1.5.1
idna                              3.4
importlib-metadata                6.8.0
importlib-resources               6.0.0
ipykernel                         6.25.0
ipython                           8.12.2
ipython-genutils                  0.2.0
ipywidgets                        8.0.7
isoduration                       20.11.0
jedi                              0.19.0
Jinja2                            3.1.2
json5                             0.9.14
jsonpointer                       2.4
jsonschema                        4.18.4
jsonschema-specifications         2023.7.1
jupyter_client                    8.3.0
jupyter-console                   6.6.3
jupyter-contrib-core              0.4.2
jupyter_core                      5.3.1
jupyter-events                    0.6.3
jupyter-highlight-selected-word   0.2.0
jupyter-lsp                       2.2.0
jupyter-nbextensions-configurator 0.6.3
jupyter_server                    2.7.0
jupyter_server_terminals          0.4.4
jupyterlab                        4.0.3
jupyterlab-pygments               0.2.2
jupyterlab_server                 2.24.0
jupyterlab-widgets                3.0.8
lxml                              4.9.3
MarkupSafe                        2.1.3
matplotlib-inline                 0.1.6
mistune                           3.0.1
nbclient                          0.8.0
nbconvert                         7.7.3
nbformat                          5.9.1
nest-asyncio                      1.5.7
notebook                          7.0.0
notebook_shim                     0.2.3
overrides                         7.3.1
packaging                         23.1
pandocfilters                     1.5.0
parso                             0.8.3
pickleshare                       0.7.5
pip                               23.2.1
pipenv                            2023.7.23
pkgutil_resolve_name              1.3.10
platformdirs                      3.10.0
prometheus-client                 0.17.1
prompt-toolkit                    3.0.39
psutil                            5.9.5
pure-eval                         0.2.2
pycparser                         2.21
Pygments                          2.15.1
python-dateutil                   2.8.2
python-json-logger                2.0.7
pytz                              2023.3
pywin32                           306
pywinpty                          2.0.11
PyYAML                            6.0.1
pyzmq                             25.1.0
qtconsole                         5.4.3
QtPy                              2.3.1
referencing                       0.30.0
requests                          2.28.2
rfc3339-validator                 0.1.4
rfc3986-validator                 0.1.1
rpds-py                           0.9.2
Send2Trash                        1.8.2
setuptools                        68.0.0
six                               1.16.0
sniffio                           1.3.0
soupsieve                         2.4.1
stack-data                        0.6.2
terminado                         0.17.1
tinycss2                          1.2.1
tomli                             2.0.1
tornado                           6.3.2
traitlets                         5.9.0
typing_extensions                 4.7.1
uri-template                      1.3.0
urllib3                           1.26.16
virtualenv                        20.24.2
virtualenv-clone                  0.5.7
wcwidth                           0.2.6
webcolors                         1.13
webencodings                      0.5.1
websocket-client                  1.6.1
widgetsnbextension                4.0.8
zipp                              3.16.2

D:\zjj\pip>

总结

到此这篇关于Python离线安装第三方库的文章就介绍到这了,更多相关Python离线安装第三方库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python爬虫框架NewSpaper使用详解

    Python爬虫框架NewSpaper使用详解

    这篇文章主要为大家介绍了Python爬虫框架NewSpaper使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • python使用wxpy轻松实现微信防撤回的方法

    python使用wxpy轻松实现微信防撤回的方法

    今天小编就为大家分享一篇python使用wxpy轻松实现微信防撤回的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • Python列表insert()函数用法详解

    Python列表insert()函数用法详解

    这篇文章主要介绍了Python列表insert()函数的使用方法,文章通过代码示例介绍的非常详细,对我们学习或工作有一定的参考价值,需要的朋友可以参考下
    2023-07-07
  • 关于Python turtle库使用时坐标的确定方法

    关于Python turtle库使用时坐标的确定方法

    这篇文章主要介绍了关于Python turtle库使用时坐标的确定方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • pytorch DataLoader的num_workers参数与设置大小详解

    pytorch DataLoader的num_workers参数与设置大小详解

    这篇文章主要介绍了pytorch DataLoader的num_workers参数与设置大小详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 浅谈DataFrame和SparkSql取值误区

    浅谈DataFrame和SparkSql取值误区

    今天小编就为大家分享一篇浅谈DataFrame和SparkSql取值误区,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 基于Python实现实时监控CPU使用率

    基于Python实现实时监控CPU使用率

    这篇文章主要为大家介绍了一款手写编程代码的小脚本,能够轻松在界面上展示:利用Python实时监控CPU使用率,随时展现。也无需下载管理软件,感兴趣的可以了解一下
    2022-04-04
  • Python WSGI的深入理解

    Python WSGI的深入理解

    这篇文章主要给大家介绍了关于Python WSGI的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • Python socket连接中的粘包、精确传输问题实例分析

    Python socket连接中的粘包、精确传输问题实例分析

    这篇文章主要介绍了Python socket连接中的粘包、精确传输问题,结合实例形式分析了Python socket连接中的粘包、精确传输相关问题原因、解决方案与操作注意事项,需要的朋友可以参考下
    2020-03-03
  • Python OpenCV基于霍夫圈变换算法检测图像中的圆形

    Python OpenCV基于霍夫圈变换算法检测图像中的圆形

    这篇文章主要介绍了通过霍夫圈变换算法检测图像中的圆形,文中用到的函数为cv2.HoughCircles(),该函数可以很好地检测圆心。感兴趣的小伙伴可以了解一下
    2021-12-12

最新评论