这是我最近部署项目时发现的一个问题
最近使用 tesseract 识别含中文文本图片,在本地开发环境 win10 测试一切正常,但是在部署项目,发现一个报错,如下:

部署环境:
- windows server 2008 R2
- python3.6.6
- 使用 venv 管理包
- 主要涉及包 pytesseract pandas numpy
当时发现这个报错,经过多次谷歌百度后未发现问题所在,且本地测试正常,而且本地环境跟生产环境 利用 venv 是保持一致的。下面是按照我的想法一步一步的排查问题:
首先确定是哪个文件哪一行出现这个问题
经过排查后发现是
import pytesseract
这一行导入出错,我首先怀疑是安装包发生错误,经过多种方法重新安装,或者回退版本后,均未解决问题,这时候我怀疑是不是包冲突了,因为之前碰到过因为包冲突的问题,例如 pdfminer 与 pdfplumber 就不能同时共存
重新构建环境验证
我重建一个虚拟环境只安装:

重新验证后,果然可以使用,未发生报错。
开始排查是哪个包冲突
这个没有啥好的办法,重建一个虚拟环境开始一个一个排查,最后发现是 pandas 冲突,卸载 pandas 后还是报错,最后发现是 numpy 冲突

在卸载 numpy 后,部署成功
最后
- 问题大概就是这样了,还好的是我这个项目中未使用 pandas,所以卸载 numpy 后就可以部署成功,下次在我使用 pandas 后怎么办?
- 请教一下,这个是 bug ?还是我有什么地方没有注意到,还请指出。