Python项目自动生成当前项目的requirements文件

时间:2021-10-06 12:58:36
 

使用pip freeze

$ pip freeze > requirements.txt

这种方式是把整个环境中的包都列出来了,如果是虚拟环境可以使用。
通常情况下我们只需要导出当前项目的requirements.txt,这时候就推荐pipreqs了

使用 pipreqs

这个工具是个好帮手,可以通过对项目目录的扫描,自动发现使用了那些类库,自动生成依赖清单,只生成项目相关的依赖到requirements.txt

安装

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

若出现类似上边的报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 186: illegal multibyte sequence
直接修改pipreqs.py 的75行,将encoding改为utf-8
Python项目自动生成当前项目的requirements文件