python-3.x 如何审核和最小化requires.txt?

kd3sttzy  于 2023-03-24  发布在  Python
关注(0)|答案(2)|浏览(87)

我正在寻找一种方法来审计和最小化requirements.txt。我接手了一个项目,这个项目在几次迭代中变得臃肿,我试图使它更易于维护。该文件包含不再在任何脚本中导入的包。
在过去,我已经完成了这个手动过程:
1.搜索项目目录,找到所有子文件夹中的所有python文件
1.搜索找到的每个python文件,找到所有import xfrom x import y语句,将这些包添加到列表中

  1. pip show列表中的每个包,将任何依赖项添加到列表的末尾
    1.列表用完后,进行排序并与requirements.txt进行比较
    1.删除不在列表中的需求。
    假设我的代码不执行相对导入,有没有一种方法可以自动化这个过程?我无法想象我会是第一个寻找这样的工具(或要点,或脚本)的人。我找不到任何。我使用windows,但我很高兴在windows subsystem for linux上使用linux命令。
ycl3bljg

ycl3bljg1#

我认为有一个工具可以帮助解决这个问题,那就是pip_missing_reqs

nwnhqdif

nwnhqdif2#

https://pypi.org/project/pipdeptree/将打印出一个依赖关系图,然后您可以将顶级依赖关系与代码中的导入进行比较。
https://pypi.org/project/findimports/将通过分析源文件来查找导入。
如果有人能做一个自动化的工具就好了。

相关问题