使用 django-simple-captcha 遇到的坑 - 文章教程

使用 django-simple-captcha 遇到的坑

发布于 2021-03-18 字数 2302 浏览 998 评论 0

一站点 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,此时此刻激动人心的一刻出现了。自己去感受一下吧。

总结:

  • 在条件允许的情况下,尽可能在 Linux 或 Mac 上做开发,这样遇到的坑比较少
  • 把 Python 换成 32 位的安装包,其他第三方的也跟着用 32 位的

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2583 文章
29 评论
84935 人气
更多

推荐作者

清欢

文章 1 评论 0

贱贱哒

文章 3 评论 0

悸初

文章 2 评论 0

西瓜杏

文章 0 评论 0

各自安好

文章 0 评论 0