爱收集资源网

极验验证码selenium破解

网络 2023-06-25 12:00

明天给你们带来的是极验验证码的selenium破解之法,是不是有点小兴奋呢,男子伴们等不及了,让我们赶快直入主题吧。

虎X网注册

此次我们是拿虎X开刀,注册帐号的时侯须要滑动图片到缺口位置,这些验证码我们如今也时常遇见,这个就不用详尽介绍了吧

针对这些验证码我们首先确定了使用selenium模拟滑动破解方法,selenium键盘联通点击拖动都比较简单,这么问题就在于拖动多少距离,双眼看上去很直观,然而程序如何获取呢?借助图象辨识......,额,这个只能想想了吧。不如瞧瞧网页源码或则恳求信息,瞧瞧有没有有效的信息。

查看网页信息

键盘右键点击到图片上,查看元素

这刹那间的图片,还好我二十几年的麒麟臂没白练,我们瞧瞧元素查看到的都是哪些东西

这看上去有点奇怪哦,有个图片链接,还有位置信息,并且还这么多,先把图片链接拷贝到浏览器里访问下瞧瞧

WTF,这是哪些鬼?注意到哪个像猪尾巴一样的6了吗?还有那种小箭头,跟前面完整图片对比一下,发觉把箭头搬动到小6门口,猪尾巴就成功了。其实你仔细观察的话,还有其他的例如文字也是类似。这么我们可以确认这张图片应当是被搅乱的,假如我们可以把它拼上去,是不是就离估算缺口位置比较近了。如今我们应当要注意到元素查看里旁边的位置信息了,这么多,看上去应当跟这个搅乱次序有点关系吧。我们来确认一下。我的看法是这样子的,既然这个位置和拼图有关,并且再看我们里面麒麟臂截的图,我再标记一下

我们点击查看元素的时侯,浏览器会帮我们突出显示一下,原本我是在图片上点击查看的,根据我的看法,它不是应当整张图片突出显示一下吗?看上去似乎不是那么回事,只有这么一小部份,但是里面还有元素信息,宽高类名,再回来瞧瞧图3,位置座标里,上面应当是x轴,旁边是y轴,y轴只有58和0,再依照图2一看,图片分为上下两部份,再数一下div的数目,26块,每一块宽10x高58。根据这个来算的话,这么整个图片的宽就是260,高116,用截图工具去拉一下图片的宽高,基本吻合

接出来就是确定如何拼了。这儿很抱歉的告诉你们,猪没了,等我讲到这儿再去查看网页的时侯,图片早已刷新了。所以接出来的截图可能不一样,在这儿提早跟你们说明一下。总之就是找特点点嘛,每位图片应当都有的。先随意找一个特点点,查看元素,看它定位到哪个div元素哪里,之后再瞧瞧前面的位置。基本就是这样,所以我们找图片既然和位置有关,这么我们最好选一些位置显著的地方,例如中间,或则两旁。

这个差不多算中间位置了吧,查这么一点点无所谓了

我去,这......跟我想的不太一样呀,再找两张瞧瞧,代表性及其强烈的

qq飞车手游精灵按键_赛尔号超能no绝版精灵蛋我孵化五天为啥没精灵_按键精灵 网页元素没有

为了避免有人说我水字数,另外两个角就不截图了。到这一步可能有人恼火了,为什么?你昨天说图片长度260,为何座标里出现了289这样的座标,这不就是超标了吗?一开始我也有这样的疑问,可能我们看见图片比实际的小,似乎人家在图片外边还留了边框呢,我一开始是如此想的。并且这个座标是上面url上面的图片座标,之后我就去看了一右图4

这个图片尽然比较大,座标问题有答案了,并且这个跟260有哪些关系呢?搅乱的图片比较大,拼好的小,那它是如何拼的呢?多亏我们看见了一个比较有用信息

听到这个-1px了吗?它成功导致了我的注意,由于根据我的看法,若果是从拼图里掏出一部份拼成一个完成图片的话,这么最右侧掏出来的图片,应当是从(0,0),(0,58),并且我们看见的是(1,0),(1,58),y值还是比较符合我们的预期的,第一部份从0开始,高58,第二部份从58开始。并且x值有点问题,根据1作为起点,那第二个应当是11,由于长度是10,这是确定的,我们找找看

是13,莫非每一小块上面都多余了1个象素?根据这些的话也应当是12呀,根据这些方法我们继续找一找剩下的,通过剖析我们发觉每位小块+12作为下一个小块的起点。这样的话左右各除去一个象素,长度不就是10了吗?并且每位小块是12,26个是312,跟我们看见的拼图大小差不多,说明我们剖析的是正确的。根据元素里提供的座标,取长度为10的大小即可。接出来剖析一下那些坐标的意义。

座标剖析

剖析一下我们图9到图12的截图,首先说图9,我原本认为它x、y应当是0,即使不是0,也应当是诸位数字吧,结果的y是58,这个算到下半截图片区域了,x是157,跑后卫去了。图11呢,你的x应当在300左右,y应当100以上吧,结果y是0,到上半段,x是205,在后卫偏后,离门将还远呢。这是如何肥事?不过我们发觉了,图9在元素里是第一个,图11在元素里是最后一个,再结合座标后面的y值全是58,前面的y值全是0,符合我们上半段下半段颠倒的看法了,之后你再分别查看图9右侧/图11右边的元素都会发觉,和元素上面div的次序一样。到这儿就差不多了。

总结一下:最终的图片就是把拼图,即图4,根据x=157、y=58、w=10、h=58截取下来,置于上半部份第一个位置,x=145、y=58、w=10、h=58截取下来放到上半部份第二个位置,紧挨到第一个,以这种推,拼成一张整图。

这个就是我拼下来的,恩,挺好,很不错嘛大叔。不过似乎那里不对,缺口嘞。仔细瞧瞧网页元素

原先一个是fullbg,一个是cutbg,这个名子就很有蕴意嘛,那就好了,再把cutbg拼一下瞧瞧

这回就对上了。现今的问题就弄成如何估算缺口位置了

缺口位置

我认为可能会有估算两张图片不同位置的方法吧,度娘来一发,之后获取了python实战===用python对比两张图片的不同,之后发觉了ImageChops.difference这个插口,结果大家晓得的,不确切,为何捏?仔细看拼好的两张图,不仅缺口还有其他地方不一样呀。见到图16缺口前面那种阴影没,让我的心中蒙上了一层阴影,再观察其他的图片,基本都有类似的,这可如何办?这在前面还好说,假如是在上面呢,那不就估算到阴影里去了嘛。假如这个对比有一个容差就好了,我曾经用键盘精灵的时侯似乎就有此类嘛,这个好不智能呀。既然它是对比象素,我直接取象素对比一下不就得了,但是我还不给它用==,给它一个范围,假如色差在这个范围内即使一样了,这样不就有容差了吗?这个缺口通常都十分显著,而阴影跟背景又很模糊,应当是可行的。思路就是获取图片的宽高,之后一个象素一个象素的遍历对比。

色差

这个色差如何确定?一种方法就是调试,这些是比较麻烦的,还有一种方法就是获取多张图片,全图和缺陷图,之后使用抓图工具,取对应位置的颜色值,确定一个大约范围。距离确定了,下边就是联通了

selenium模拟联通

selenium的模拟操作网上介绍好多,这儿我们只要确认须要什么插口就行了。ActionChains方式:

selenium的操作我就不详尽描述了,这儿用到的都是比较简单的用法。

原理剖析就完了,这一次必需要贴代码了,否则可能好多人完成不了,也有利于你们的理解。

按键精灵 网页元素没有
上一篇:重新养青蛙,开心无比! 下一篇:没有了
相关文章