翼度科技»论坛 编程开发 python 查看内容

内网环境下批量安装python库

10

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
最近组里安排了新内网,又要配环境。
众所周知,内网安装python库需要先到www.pypi.org找到对应版本的包,然后再下载whl文件,上传到内网,再用pip install "文件地址"去安装。
这样就会出现一个问题,鬼知道这个包需要的前置依赖是什么,pip会自动检查前置依赖,然后自动从源下载,但是内网又连不上互联网,然后要等三五次连接失败才结束。
深感这个过程之麻烦,于是写了两个powershell脚本,一个自动批量下载指定的包,一个自动安装所有的包。
使用过程如下:

  • 首先查看内网环境的python版本,然后在外网的anaconda中创建一个同样python版本的虚拟环境,这是为了保证pip自动安装的库的版本能使用在内网里。
  • 打开anaconda powershell promt,这是内置了anaconda指令的powershell控制台,切换到对应的虚拟环境。

  • 替换下面脚本中的包列表字符串和文件夹地址字符串,然后复制粘贴并运行,运行完就会下载好包含各种whl的文件夹了
    1. # 替换,包必须是能正常pip install的包,例如包含cv2模块的包不是cv2,而是opencv-python
    2. $packagesString = "matplotlib pyside6 opencv-python"
    3. # 替换,最后要加'\'
    4. $folder = "E:\python3_9_12"
    5. $packages = $packagesString -split " "
    6. foreach ($package in $packages) {
    7.         pip download $package -d $folder$package
    8. }
    复制代码



  • 上传到内网,然后在内网的powershell中运行以下脚本,即可将文件夹下所有的库都安装到当前的python环境中。
    1. # 替换成内网中的路径,最后要加'\'
    2. $folderPath = "D:\python"
    3. $folders = Get-ChildItem -Path $folderPath -Directory
    4. foreach ($folder in $folders) {
    5.     pip install --no-index --find-links=$folderPath$folder $folder
    6. }
    复制代码
最后就大功告成了,终于摆脱了麻烦的安装过程。

来源:https://www.cnblogs.com/LuisonLiu/p/17485853.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具