Python 2.7 PIL : Pillow-3.3.0-cp27-cp27m-win_amd64.whl PIL第三方库的下载 win下安装whl文件 http://www.cnblogs.com/2589-spark/p/4501816.html Pytesser:依赖于PIL ,Tesseract 了解pytesser及基本使用 http://blog.sina.com.cn/s/blog_5d56279201017fta.html Tesseract:3.0.2 tesseract下载及安装 http://blog.csdn.net/wanghui2008123/article/details/37694307我有个理想,就是把TMD教务系统弄崩溃,我港真的! 扯淡我相信每个脚本都有自己的故事,我这个脚本来源于自己GRD教务系统,每次进行登录时,即使我输入全部正确,第一次登录一定是登不上去的!我不知道设计人员什么想法?难道是为了反爬机制?你以为一次登不上,我tm就不爬了?我要是不高兴了,信不信秒秒钟访问你1000+让大家都上不去咯~咳咳,有点跑题了。 目的 自动识别验证码模拟登陆,注意是自动,一键登录,不是那种扫出验证码,然后手动输入登录! 第一次放动图,心理还有点小激动~ 遇到问题及解决方法1:验证码取得问题,因为每次刷新之后验证码动态刷新,所以如果不采用cookie的话(我还不太会用cookie),根本捉不到元素,这个我在下篇文章中采用cookie来登录的,但不是调用浏览器,这个跑远了,下次说。
2:验证码验证错误率高问题
3:调用Tesseract.exe问题 4:登录失败问题–mdzz学校教务系统二次验证 4:解决方案,写了一个while循环,把主程序很大部分都扔进去了,目的也很明确,如果第一次登录失败,再重复进行登录,注意采用try试探元素是否仍然存在,except来抛出break结束循环,因为登录成功后,比如说 5:明明图片已截取,为什么没有识别 6:元素一切就位,为什么不执行操作 7:两次验证失败后,用户名重复累加 8:im.crop(box)裁剪区域选择困难症 9:导入不了Image,ImageEnhance 10:找不到应该键入的元素 上图的代码我也放上,大同小异,比有验证码的简单,但是多了一个click操作。 断断续续差不多两天时间来实现这个操作,虽然对大家来说应该不算难,但是对自己还是有蛮大提升的,对selenium有了基本的概念和操作,对PIL也进行了使用,还有ocr的调用,虽然调用firefox来执行操作表面上看起来很酷炫,但是执行效率和占用内存是很大的内伤,但作为可视化的模拟浏览器登录,这点做的还是十分绚丽的。 |
|
来自: 昵称38290836 > 《Python》