一站点 gongshare.com 在做注册功能时验证码采用的 django-simple-captcha,因为笔者开发环境采用的 Windows 64bit 系统,结果安装使用的时候接二连三遇到好几个坑。
django-simple-captcha 需要依赖 django1.3+、PIL1.1.7+ 或者 Pillow2.0+,根据文档安装后开始使用时,最开始报如下错:
TypeError: function takes at most 4 arguments (6 given)
这个错误在 stackoverflow 找到了答案,把 PIL 替换成 Pillow 就行,Pillow 是从 PIL fork 过来的一个版本,至于为什么会有 Pillow 这么个东西,pillow 的作者对它做了最好的解释,大概意思就是对PIL的安装方式和Bug修复问题感到不满。窃以为替换了PIL后就没问题,于是接着问题又来了:
IOError: encoder zip not available
还是在 stackoverflow 找答案,目测还是PIL的问题,我很纳闷,PIL卸载了(使用命令 pip uninstall PIL),Pillow重新安装了,为啥还是不行,结果跑到控制面板查看已安装的程序,发现还有个64位的PIL,因为笔者之前安装过一次二进制的PIL.exe,另外发现自己的Python版本也是64位的Python2.7.4,于是乎,手动卸载控制面板中出现的那个PIL,又重新安装了遍 Pillow 未果,跑到这个网站下了个安装版的 Pillow-2.1.0.win-amd64-py2.7.exe,新的错误出现了:
The _imaging C module is not installed
此时快要崩溃了,但还是不死心啊,于是把 64 位的 python2.7.4 也卸载掉,换成了 32 位的 python2.7.5,此时此刻激动人心的一刻出现了。自己去感受一下吧。
总结:

