要放假了好颓废。。。。 

没啥事儿干,就把之前剩余的顶象点选系列的验证码类型看了下。  之前分享了一篇关于这个顶象的滑块的 DX算法还原_dx算法还原_逆向学习之旅-CSDN博客,感兴趣可以去看看。

咱们以文字点选为例:

    def get_image_arry(self,r):
        t = []
        for e in [ord(i) for i in r]:
            while e % 32 in t:
                e += 1
            t.append(e % 32)
        return t

这个是图片还原的数组生产方法,r为图片id值:也就是下面这个。

 文字点选的还原跟它滑块的还原还是有点区别的,这个得去好好看看才行。 咱们还是用py来还原,要快一点,下面这个直接拿来用。

    def img_recover(self,binary, captcha_id):
        """ 图片拼合 """
        restore_list = []
        img = cv2.imdecode(np.array(bytearray(binary), dtype='uint8'), cv2.IMREAD_UNCHANGED)
        new_img = np.zeros((150, 288, 3), dtype=np.uint8)
        lk = len(restore_list)
        ck = int(300 / lk)
        for cp in range(lk):
            c = restore_list[cp] % lk * ck
            xp = cp % lk * ck
            slice_img = img[0: 150, c: c + ck]
            new_img[0: 150, xp:xp + len(slice_img[0])] = slice_img
        new_img = cv2.resize(new_img, (300, 150))  # 官网上图片展示的时候就是380*165 这里重新设置到这个尺寸
        normal_img = cv2.imencode('.jpg', new_img)[1]
        normal_img = np.array(normal_img).tobytes()
        return normal_img

其他的好像没啥可以说的了,之前的文章里面关于constid和ac的生产也都是有的。可以copy过来然后改来用就行。

其实点选类型的也是有坑的,留个雷点,感兴趣就自己去排查一下。然后的话有的虽然用的官方的那套,但是到了部分站点上也是通不过的,官网只要是坐标点对上了,就基本上完事了。不过类似于海南航空,咱们直接用也是不咋行的,我排查了一上午才找到问题。可能是我算法处理的有问题吧。

其余的好像没啥可以说的了。对了,最开始我ac生产的长度才 153 也能过很奇葩,哈哈

要了一份李成功大哥的代码,这个是他的 也才290多,没办法greenseer里面缺少浏览器环境,那就老老实实的补吧。

缝缝补补又一年,所以不懈努力之下。终于来到了900的 跟官方的1000多虽然差点,不过也差不到哪儿去了。兄弟们 不能太短,太短要被嘲讽的,哈哈哈哈哈!!!

再修修补补其实应该就行的,不想努力了,选择摆烂。

看看结果:基本上官方的那套可以通用了。

就这样了,仅仅记录一下,感觉上也没说到啥。

完事儿了哦,大表哥们。有问题可以给我留言。或者私信加我。15702312233

或者关注我们的作坊:图腾视觉开放平台-高速、稳定、易用的webapi接口调用 (现已合作大佬超乎你想象)图腾视觉-OCR识别平台

提示:有问题的小伙伴可以私信讨论。

重要的事儿说三遍 :若是侵权请联系作者删,若是侵权请联系作者删,若是侵权请联系作者删。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐