场景:由于自己的电脑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依赖包迁移到断网环境操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

标签:
Python,依赖包,迁移,断网环境

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“Python依赖包迁移到断网环境操作”
暂无“Python依赖包迁移到断网环境操作”评论...

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。