python生成requirements.txt方便分享项目


很久没有用python制作独立项目了,都是用python3制作一些小功能,也没有那么多扩展需要管理。最近看到很多新项目都添加了requirements.txt文件看着很方便。也总结记录一下,方便以后使用。

下载新项目后,如果有一堆扩展要安装,如果项目中有requirements.txt则可以吹喇叭庆祝了,直接一件搞定所有依赖库的安装:
pip install -r requirements.txt

如果没有将是意见很悲催的事情,需要手动执行pip install手动安装所需扩展,小型项目还好写,如果是大型项目,就要崩溃了。

python大佬们提供了一种简单的方式生成requirements.txt文件。

pip freeze > requirements.txt

这种方式不需要安装第三方依赖就可以,但是有个大问题,就是它会把当前python环境中的类库都导入到文件中。这不是我们想要的。

还有一种更干净卫生的方式。安装pyreqs

pip install pipreqs

在项目根目录执行

pipreqs .

即可生成清爽可人的requirements.txt文件。

另外如果项目源文件中有中文,可能会报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0x89 in position 144: illegal multibyte sequence。此时增加--encoding=utf8参数即可。

如果提示requirements.txt文件已经存在,添加--force参数即可。

最后完整的命令如下:

pipreqs --encoding=utf8 --force .

Archives