最新面试官问你自动化登录验证码如何处理?一文帮你解决,2024年最新Python面试题目

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

好了,这里是个简单的例子。验证码可以自己百度上找。打开图片这里的路径根据自己的实际情况更改。lang='eng’这里,也可以不要,这里的意思就是识别中文还是英文,如果是中文那么需要另外下来语言包。默认英文。

这里,有很多朋友跑起来之后会报错,提示你什么什么path没有发现或者不对的。改一下配置就好。上述代码中按住ctrl鼠标点击image_to_string方法,会进入到pytesseract.py文件。

将此处注释的改成你的Tesseract-OCR文件内的tesseract.exe路径即可,然后重启电脑

注意:这样的方法可以识别验证码码,但是准确率太低了,甚至有很多不能识别。所以介绍到此结束。

ddddorc

=======

这个包就比上一个方法强很多了。识别率也是比较不错的。但是呢,作者比较的流氓。大佬很强但是也很流氓。至于为什么这么说,各位去试试就知道了。pip install ddddorc

好了玩笑到这里。大家不喜欢作者的库每次打开后都有一些介绍信息的可以去源代码删了,下面会介绍。

from ddddocr import DdddOcr

实例化方法

ocr = DdddOcr()

打开图片

file = open(r’./PIC/7.png’,‘rb’)

读取图片

img = file.read()

识别图片

result = ocr.classification(img)

打印内容

print(result)

上述例子,验证码自己备好哦。上述简单的例子就能完成验证码图片识别了。可以自己去试试。

DdddOcr是里面的一个类方法。里面还有一些其他的功能各位大佬自己去试试吧。本文只介绍图片识别哦。上面比较的好理解吧。那么我们进入实战。

“”"

体验管理员: admin

密码: shopxo

https://d2.shopxo.vip/admin.php?s=admin/logininfo.html

“”"

是一个后台管理的地址,请不要乱删改里面的内容,作者开源不易。

我们先用最简单的脚本来写一下:

–>>>清安<<<—

from PIL import Image

from ddddocr import DdddOcr

from selenium import webdriver

from time import sleep

“”"

体验管理员: admin

密码: shopxo

https://d2.shopxo.vip/admin.php?s=admin/logininfo.html

“”"

fox = webdriver.Firefox()

fox.get(‘https://d2.shopxo.vip/admin.php?s=admin/logininfo.html’)

fox.find_element_by_xpath(“//input[@name=‘accounts’]”).send_keys(‘admin’)

fox.find_element_by_xpath(“//input[@name=‘pwd’]”).send_keys(‘shopxo’)

pic = fox.find_elements_by_xpath(“//span[@class=‘am-input-group-btn’]”)[1]

sleep(2)

保存截图

fox.save_screenshot(‘./PIC/6.png’)

获取位置

location = pic.location

print(location)

获取大小

pic_size = pic.size

print(pic_size)

确定所需要的图片大小

rangle = (int(location[‘x’]-5), int(location[‘y’]-5), int(location[‘x’] + pic_size[‘width’]+11),

int(location[‘y’] + pic_size[‘height’]+7))

打开之前截图图片

image = Image.open(‘./PIC/6.png’)

开始裁剪

image1 = image.crop(rangle)

保存裁剪后的截图

image1.save(‘./PIC/7.png’)

实例化类方法

ocr = DdddOcr()

打开图片,二进制形式

file = open(r’./PIC/7.png’,‘rb’)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 17
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值