pipreqs是一个用于生成Python项目的依赖需求文件(requirements.txt)的工具。它可以自动分析项目的源代码,检测项目中所使用的第三方库,并生成一个包含这些库及其版本信息的requirements.txt文件。

使用pipreqs可以简化项目的依赖管理过程,特别是在共享项目或部署项目到其他环境时。它可以帮助你快速生成一个准确的依赖清单,以确保在其他环境中能够正确安装和运行项目所需的依赖库。

使用pipreqs非常简单,你只需要在项目的根目录下运行以下命令即可生成requirements.txt文件:首先,看一下如何安装pipreqs,依然是熟悉的pip安装:

pip install pipreqs

再来看一下如何使用pipreqs

最简单的用法是,直接在指定目录下生成requirements.txt,采用如下命令:

pipreqs ./

不出意外的话,大概率会报错,或者卡死。

因为这个工具是老外写的,默认没有考虑到路径名称的编码问题,和外网的连接速度问题。

我们用的时候一般采用如下命令:

pipreqs ./ --encoding utf8 --force --use-local

使用utf8编码 覆盖原来的requirements.txt 并且使用本地包信息而不是查询PyPI

但是……如果你使用Pycharm开发的话,不出意外的话,大概率还是会报错

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb1 in position 81: invalid start byte

已经使用了utf8编码了为什么还是会无法识别呢?

原来啊,在根目录下还会有pycharm生成的.venv虚拟环境,需要排除

pipreqs ./ --encoding UTF8 --force --use-local --ignore .venv

使用--ignore来排除.venv文件夹,运行提示Successfully即可成功。

INFO: Successfully saved requirements file in ./requirements.txt

By admin

发表回复