python 查看依赖包_python查找项目依赖并生成requirements.txt(转载)

项目开发的时候,总是要搭建和部署环境,这时,就需要一个python第三方包的list,一般叫做requirements.txt。如果项目使用virtualenv环境,直接使用pip freeze即可,但是如果项目的依赖没有维护,就会很麻烦,这时我们就需要一个叫pipreqs的工具,可以帮助我们自动生成requirements.txt文件。

使用pip freeze

pip freeze > requirements.txt

这种方式配合virtualenv 才好使,否则把整个环境中的包都列出来了。

pipreqs

这个工具的好处是可以通过对项目目录的扫描,自动发现使用了那些类库,自动生成依赖清单。

缺点是可能会有些偏差,需要检查并自己调整下。

安装:

pip install pipreqs

用法:

在项目的根目录下使用 pipreqs ./

如果是Windows系统,会报编码错误 (UnicodeDecodeError: 'gbk' codec can't decode byte 0xa8 in position 24: illegal multibyte sequence)

使用时,指定编码格式

pipreqs ./ --encoding=utf8

生成requirements.txt 文件后,可以根据这个文件下载所有的依赖

用法:pip install -r requriements.txt 即可

附:

详细用法:

pipreqs [options]

选项:

--use-local仅使用本地包信息而不是查询PyPI

--pypi-server 使用自定义PyPi服务器

--proxy 使用Proxy,参数将传递给请求库。你也可以设置

终端中的环境参数:

$ export HTTP_PROXY =“http://10.10.1.10:3128”

$ export HTTPS_PROXY =“https://10.10.1.10:1080”

--debug打印调试信息

--ignore ...忽略额外的目录

--encoding 使用编码参数打开文件

--savepath 保存给定文件中的需求列表

--print输出标准输出中的需求列表

--force覆盖现有的requirements.txt

--diff 将requirements.txt中的模块与项目导入进行比较。

--clean 通过删除未在项目中导入的模块来清理requirements.txt。