python 自动生成当前项目的requirements文件
python 自动生成当前项目的requirements文件
有几种办法:
1、使用pip freeze
<pre style="margin: 0px 0px 15px; padding: 0px; font-family: "Courier New" !important; font-size: 12px !important; line-height: 1.72222; color: inherit; white-space: pre; border-radius: 6px; overflow-wrap: break-word;"> pip freeze > requirements.txt</pre>
这种方式是把整个环境中的包都列出来了,如果是虚拟环境可以使用。
通常情况下我们只需要导出当前项目的requirements.txt,这时候就推荐pipreqs了
2、使用 pipreqs
这个工具是个好帮手,可以通过对项目目录的扫描,自动发现使用了那些类库,自动生成依赖清单,只生成项目相关的依赖到requirements.txt
安装
<pre style="margin: 0px 0px 15px; padding: 0px; font-family: "Courier New" !important; font-size: 12px !important; line-height: 1.72222; color: inherit; white-space: pre; border-radius: 6px; overflow-wrap: break-word;">pip install pipreqs</pre>
使用
使用也很简单 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 的407行,将encoding改为utf-8,保存,在运行 pipreqs ./
pipreqs.py 路径
C:\Users\linxiao\AppData\Local\Programs\Python\Python37\Lib\site-packages\pipreqs