在使用pipreqs检查python项目依赖时遇到的问题

先安装

pip install pipreqs

首先执行

pipreqs --use-local ./

报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xbf in position 2: illegal multibyte sequence

需要上--encoding=utf8 如下

pipreqs --use-local --encoding=utf8 --force .

如果已经存在requirements.txt,需要加上 --force 覆盖之

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

有几种办法:

1、使用pip freeze

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

2、使用 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
使用 requests.txt 自动安装所有依赖包
pip install -r requirements.txt

转载于:https://www.cnblogs.com/wangyuxing/p/11162232.html

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python项目代码使用过程中,可能会遇到各种各样的问题。为了更好地记录和解决这些问题,我们可以建立一个Python问题汇总索引目录,以便随查阅和解决。 1. 数据类型问题:比如在处理数据遇到了不同数据类型的转换问题,如将字符串转为数字或者将数字转为字符串等。 2. 模块导入问题:在使用第三方模块,可能会遇到无法导入模块的问题,需要查找原因并解决。 3. 语法错误:在编写代码,可能会出现各种语法错误,如拼写错误、缩进错误等,需要及修改以保证代码的正确运行。 4. 性能优化问题:在项目运行过程中,可能会遇到性能瓶颈,需要进行代码优化以提高项目的运行效率。 5. 异常处理问题:在项目运行过程中,可能会遇到各种异常情况,需要进行异常处理以保证程序的稳定性。 6. 接口调用问题:在项目中调用外部接口,可能会遇到接口参数传递或者返回结果处理的问题,需要及解决。 7. 单元测试问题:在编写项目代码,可能会遇到单元测试用例编写或者执行结果验证的问题,需要及进行检查和修复。 8. 版本兼容性问题:在使用第三方库或者Python版本升级,可能会出现版本兼容性问题,需要及调整或者更新相关的代码。 总之,建立Python问题汇总索引目录可以帮助我们更好地管理和解决在项目代码使用过程中遇到的各种问题,提高项目的开发和运行效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值