Python依赖包迁移到断网环境操作

(编辑:jimmy 日期: 2025/9/16 浏览:2)

场景:由于自己的电脑A性能不足,需要转移到一台高性能的主机B上运行python程序,但是该主机不能连接互联网。

问题:在个人电脑A上建立了一个虚拟环境,安装了依赖包并且调试程序使其能运行。但是将虚拟环境所在文件夹复制粘贴到主机B上时,无法运行。

环境:Windows、Python3.6

解决办法:

1.主机A(虚拟环境激活)pip freeze >requirements.txt 将虚拟环境中安装的Python依赖包记录到文件requirements.txt中。

2.主机A(虚拟环境激活)pip download -r requirements.txt -d packages 将安装的Python依赖包保存到packages目录下。

3.主机B 在断网的主机上安装好python3.6

4.主机B 在项目下建立虚拟环境,并激活。同时将whls文件夹和requirements.txt复制粘贴到项目目录下。

5.主机B(虚拟环境激活)pip install --no-index --find-links=packages -r requirements.txt 在主机B的虚拟环境中安装requirements.txt里的依赖包。

补充知识:python项目导出所需要的依赖库或者整个环境的库

使用pip freeze

pip freeze > requirements.txt

这个命令安装了环境中的所有第三方包,一般在虚拟环境中可以这样使用比较方便。

安装命令

pip install -r requirements.txt

使用 pipreqs

如果想要在正常的环境下整理出一个项目所使用的第三方库可以使用pipreqs

第一步安装

pip install pipreqs

使用也很简单 pipreqs 路径名

此处直接进到项目根目录,所以是./

pipreqs ./

这样直接可以生成项目中所以用的第三方库。

如果报错

File "c:\users\devtao\appdata\local\programs\python\python36-32\lib\site-packages\pipreqs\pipreqs.py", line 341, in init
extra_ignore_dirs=extra_ignore_dirs)
File "c:\users\devtao\appdata\local\programs\python\python36-32\lib\site-packages\pipreqs\pipreqs.py", line 75, in get_all_imports
contents = f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 186: illegal multibyte sequence

可以在安装的pipreqs.py中修改 74行左右的encoding=‘utf-8'

以上这篇Python依赖包迁移到断网环境操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?