Python 自动生成环境依赖包 requirements

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-30 20:41   33   0

一、生成当前 python 环境 安装的所有依赖包

1、命令

# cd 到项目路径下,执行以下命令
pip freeze > requirements.txt

# 或者使用如下命令
pip list --format=freeze > requirements.txt

2、常见问题

1、中使用 pip freeze > requirements.txt 命令导出已安装的模块,其中部分模块显示了 @ file:///...,而不是具体的版本号,如下图:

此时,如果我们直接在其他机器上边使用 pip install -r requirements.txt 安装模块时,就会遇到如下错误:

ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such
file or directory: 'C:\\ci\\cffi_1600699250966\\work'

原因

这是 pip 安装软件包的一种特殊语法(自19.1开始受支持)PEP404,但是该此种路径取决于环境,file:///URL 仅在本地文件系统上可用,你不能将生成的 requirements.txt 文件提供给其他人使用

解决

使用上述命令导出的文件中,会包含如下几个包:distributepipsetuptoolswheel。。。,建议手动删除!

二、只生成当前 项目 的所有依赖包

1、步骤

2.1.1 安装 pipreqs

pip install pipreqs

2.1.2 执行命令,在当前工程目录生成

# cd 到项目路径下,执行以下命令
# 如果已经存在requirements.txt,需要加上 --force 覆盖之
# 如果提示“UnicodeDecodeError: 'gbk' codec can't decode ”的错误,需要指定字符集 --encoding=utf8
# 如果有想要忽略的目录,可以使用 --ignore <dirs> ...忽略额外的目录
pipreqs ./ --encoding=utf8 --force

三、使用 requirements.txt 安装依赖的方式

pip install -r requirements.txt

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP