采集极验4滑块验证码图片数据

news2025/3/13 18:58:05

在网络安全领域,验证码是一种常见的用于验证用户身份或防止恶意机器人攻击的技术。而极验4滑块验证码作为一种广泛应用的验证码形式,其具有较高的安全性和防御能力。本文将以获取极验4滑块验证码图片数据为主题,介绍相关技术和方法。

一、极验4滑块验证码简介

极验4滑块验证码是一种基于用户滑动操作来验证的验证码形式。用户需要通过滑动滑块至指定位置,以证明自己是真实用户而非机器人。这种验证码形式采用了机器学习和行为分析等先进技术,难以被自动化工具或脚本破解,因而广受网站开发者的青睐。

二、采集极验4滑块验证码图片的必要性

在研究极验4滑块验证码自动化通过的过程中,我们需要获取大量的验证码图片数据,以便进行训练和分析。这些数据对于算法的优化和改进非常重要。因此,我们需要利用爬虫技术来采集这些极验4滑块验证码图片。

三、使用爬虫技术采集极验4滑块验证码图片

1、确定目标网站:选择一个包含极验4滑块验证码的目标网站作为爬取对象。

2、分析网页结构:通过查看目标网页的源代码和开发者工具,了解滑块验证码的位置、样式和相关参数。

这里用火狐浏览器为例,浏览器按下F12,选择【网络】选项卡,清空里面的请求。然后点击刷新验证码按钮,就可以获得新的图片,这样就可以得到获取图片的链接。

 3、分析请求参数

通过浏览器抓包,得到的信息如下,其中bg参数包含的就是大图的链接,通过链接就可以直接下载图片了。

4、编写爬虫代码:使用Python编写爬虫代码,模拟浏览器行为,访问目标网站并获取验证码图片的URL。

这个链接具有一定的时效性,可能十分钟后就会失效吧,所以失效后可以再通过浏览器抓包方式获取最新的链接继续采集。下面的代码链接就已经失效了,请替换为自己最新的链接。

import time
import json
import requests
from io import BytesIO
from PIL import Image


for i in range(100):
    url = "https://gcaptcha4.geetest.com/load?callback=geetest_1689421548194&captcha_id=cdb27a1d9a634fd518f2fa445d6f1c1f&client_type=web&lot_number=ec23b49f8bcd45c38dce44d5f116ad3f&pt=1&lang=zho&payload=xSJqOy81RFro17RrPzpVayZp14MU2h0xs_RHbIGG757niUjQE6Ce0diVZJvowhabG0LPg9JW7et3ANw6hHB7IA1y7g3utf3RrKEkasazsNcVDYmbIlNPNhrST81ZJr8XaQOwaOj68ZMIsYFNiO5IoUqAP4vu-i9Vn2CK1JMq4n_JPLRl6hFK5Tl013_x-r9eB27gl7t1HShpy75zQ3xBusi0YGsKj9GF_aEWNrxtXZUrahjeaHtaOZdKo1NilEb4tPAdQXbual7aHpLHSaBIxsvu1PJrIEHNUDdxaxS1c17896OaRu5hKQHGS4170jTjhO4rPFoB4ffmugcTpV3DjWDheCt1UuVfme2f8bl96gAUno_f4Trv3ZZiAy4W3mqSik_gVvDtOMrgJrz2CWad1R3pdGOwI-XaLDrTbK4UIMmoZutjQX077m5IJLTMbSYlJwvstO9la0NcbmPK68dcojaABgIkbGvbCS97GPlubQyV_DYGSVCVGH3TmB2sETmQaDj3bkwWFtJ3YHbkL8RxI8sgid3ho4jQVgErUW0eoNgGOB1tzxnKV8RAbDvoT7YXXnVEGCzdve7ySPFrGqpdvbJ95PL3bmoptX4TgKvvPGJZBRXxXAIaYyC1KgUOFpe5YBWAMhcgkEQqQIC2Akb5cXTU6ETwvUz_m7Bufq0n2xnXTi3-pCtXJ5uxQxRVkwzwRc80sj63DnYvdDfu20V7vkJ-C766-TOlsuMOeFMIqHk%3D&process_token=5b752f9db61a493103c23ece058cc115fab03cb5f0e69d1cbd22c36ec24622bc&payload_protocol=1"
    header = {
        "Host": "gcaptcha4.geetest.com",
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0",
        "Accept": "*/*",
        "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
        # "Accept-Encoding": "gzip, deflate, br",
        "Connection": "keep-alive",
        "Referer": "https://monica.im/login",
        "Cookie": "gt_captcha_v4_user=4c5398c023e1401695cd2cbd3e52aba2; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2218875ab69c7441-060783d3e4bfe08-4c302978-1327104-18875ab69c94db%22%2C%22first_id%22%3A%22%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%2C%22%24latest_landing_page%22%3A%22https%3A%2F%2Fwww.geetest.com%2Fshow%22%7D%2C%22%24device_id%22%3A%2218875ab69c7441-060783d3e4bfe08-4c302978-1327104-18875ab69c94db%22%7D; Hm_lvt_25b04a5e7a64668b9b88e2711fb5f0c4=1685601348; _uetvid=ca611c60004611ee8d41855bd2dec21b",
    }
    # 请求获取大图链接
    response = requests.get(url=url, headers=header)
    # 解析响应,转成字典
    data = json.loads(response.text[22:-1])
    # 获取大图链接
    bg_url = 'https://static.geetest.com/' + data['data']['bg']
    # 下载大图
    response = requests.get(url=bg_url)
    # 保存大图
    img = Image.open(BytesIO(response.content))
    img.save('train_img/{}.jpg'.format(int(time.time() * 1000)))

    time.sleep(2)

5、下载验证码图片:利用爬虫代码发送请求,下载验证码图片并保存到本地。

6、数据清洗和整理:对下载的验证码图片进行清洗和整理,确保数据的准确性和完整性。

四、总结

1、和极验3相比,极验4大图反爬能力变弱了。因为极验3图片链接很快就会失效。

2、和极验3相比,极验4图片的解析难度变小了。因为极验3的图片是打乱的,还需要拼图。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/761695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Jenkins入门到实战】忽如一夜春风来,千树万树梨花开

自动化运维之Jenkins 前提条件:安装好jdk (版本要求11-17)并配置好环境变量 一、Jenkins 1、Jenkins是什么 Jenkins是一个开源的持续集成服务,用于实施软件开发和发布流程。它帮助软件开发和运维团队在构建、测试和部署软件上实…

cesium的使用

cesium的使用 cesium的使用创建一个vue项目 vuevitecesium参数的使用常用点位标记删除动态渲染路线借助truf.js的算法进行渲染地块的实现topojson cesium的使用 1.下载或者安装cesium的插件 官方文档 下载下来后创建文件夹整个包引入 2.生成token 新的包应该有默认token如果没…

前端学习记录~2023.7.10~CSS杂记 Day5

前言一、样式化表格1、一个典型的 HTML 表格2、进行样式化(1)间距和布局(2)简单地排版(3)图形和颜色(4)图案(5)样式化标题 最终效果如下 ![在这里插入图片描述…

【Spring Cloud Alibaba】Nacos的服务注册和发现(discovery)的使用

【Spring Cloud Alibaba】系列文章 标题链接【Spring Cloud Alibaba】Nacos的安装与介绍以及Nacos集群的安装https://masiyi.blog.csdn.net/article/details/129530053【Spring Cloud Alibaba】Nacos config的使用和高阶用法https://masiyi.blog.csdn.net/article/details/129…

LabVIEW通过嘴唇图像识别为残疾人士开发文本输入系统

LabVIEW通过嘴唇图像识别为残疾人士开发文本输入系统 近年来,计算机已经成为现代人日常生活中的一种信息器具。人们可以使用计算机来处理复杂的文件,获取新信息并在线购物等。但是,上面讲的使用电脑的所有好处对普通人来说都很方便&#xff…

React05-样式隔离

一、样式隔离方案 css 的样式是全局样式,在书写react组件时,如果写了相同的样式类名,很容易造成样式污染。 在 vue 中,vue 官方提供了样式隔离方法,在组件代码中的 style 标签中加入 scoped,可以让这部分…

Python案例分析|使用Python图像处理库Pillow处理图像文件

本案例通过使用Python图像处理库Pillow,帮助大家进一步了解Python的基本概念:模块、对象、方法和函数的使用 使用Python语言解决实际问题时,往往需要使用由第三方开发的开源Python软件库。 本案例使用图像处理库Pillow中的模块、对象来处理…

Java中的JDBC编程(数据库系列6)

目录 前言: 1.什么是Java的JDBC编程 2.JDBC的数据库驱动包的导入过程 3.JDBC代码的编写 3.1创建并初始化一个数据源 3.2和数据库服务器建立连接 3.3构造SQL语句 3.4执行SQL语句 3.5释放必要的资源 3.6整体代码的展示及演示 3.7代码的优化 3.8 查询操作的…

「深度学习之优化算法」(十四)麻雀搜索算法

1. 麻雀搜索算法简介 (以下描述,均不是学术用语,仅供大家快乐的阅读)   麻雀搜索算法(sparrow search algorithm)是根据麻雀觅食并逃避捕食者的行为而提出的群智能优化算法。提出时间是2020年,相关的论文和研究还比较少,有可能还有一些正在发表中,受疫情影响需要论…

关于学习过程中的小点

nfev : 函数求值次数njev : Jacobian 评估的数量nit :算法的迭代次数 permute(dims)#维度转换 torch.split #[按块大小拆分张量] Pytorch.view Pytorch中使用view()函数对张量进行重构维度,类似于resize()、reshape()。用法如下:view(参数a,参数b,...)&a…

Nacos1.4.2单机与集群的安装部署

CentOS 部署Nacos1.4.2 下载 nacos 下载链接:https://github.com/alibaba/nacos/tags 如何选择我们下载的 nocas 版本? 查看 Spring Cloud Alibaba 与 nacos 版本对应关系:SpringCloudAlibaba 组件对应关系说明 本项目使用 nacos 1.4.2 …

Python(十七)数据类型转换——str()函数和int()函数

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

2023年上半年:C#、Python和一些实用语言

文章目录 C#Pythonerlang和exilirfortranR语言 最近半年的开发任务主要集中在C#和Python上,所以博客内容也几乎围绕这两个部分,偶尔会穿插一些其他语言。下面就对2023年上半年的博客做一个总结。 C# 主要用C#写了一个文本阅读器,提供生成目…

学C的第二十八天【字符串函数和内存函数的介绍(一)】

相关代码gitee自取:C语言学习日记: 加油努力 (gitee.com) 接上期: 学C的第二十七天【指针的进阶(三)】_高高的胖子的博客-CSDN博客 前言: (1). C语言中对于字符和字符串的处理很是频繁&…

linux驱动开发:驱动开发框架,linux内核字符设备驱动开发过程

一、驱动框架 1.Linux内核模块和字符驱动的关系 模块是Linux进行组建管理的一种方式, 结构体:对设备的管理内核需要抽象出来一个结构体来描述设备所有的共性信息写驱动需要申请一个结构体并赋值(初始化),然后注册给内核让内核统一管理 驱动:由内核统一管理,所以驱动…

NUXT3学习笔记2

1、配置Ant design Vue (两个安装方式随便选一种,yarn会安装的更快) npm i ant-design-vue --save yarn add ant-design-vue 2、使⽤的 Vite,你可以使⽤ unplugin-vue-components 来进⾏按需加载。 yarn add unplugin-vue-components --save 在nuxt.…

设计模式——享元模式

享元模式 定义 享元模式(Flyweight Pattern)是池技术的重要实现方式。 使用共享对象可以有效地支持大量的细粒度对象。 优缺点、应用场景 优点 可以大大减少应用程序创建对象的数量,降低程序内存占用。 缺点 提高了系统的复杂度&…

5分钟上手IP代理服务

一 IP代理服务 在网上找了一个性价比高的IP代理服务,一个IP地址1分钱。 二 API协议 调用方式为http协议,响应数据格式支持JSON和txt,都是比较常用的方式。 三 源码范例 包括一些主流的编程语言,一分钟上手。 我用的python比较…

【Redis应用】查看附近(五)

🚗Redis应用学习第五站~ 🚩本文已收录至专栏:Redis技术学习 查看附近的XXX在我们的实际应用中非常广泛,能支持该功能的技术有很多,而在我们的Redis中主要依靠GEO数据结构来实现该功能! 一.GEO用法引入 GE…

问题解决:win10连接手机热点总是频繁自动断开

问题描述:尝试解决 问题解决:win10连接手机热点总是频繁自动断开 问题描述: 在使用win10笔记本电脑连接手机热点上网时,是不是的网络自动就断掉了,而且重新连上后,用着用着又断了, 这就让人有点恼火了, 尝试解决 重启电脑与手机 以前没出现过而现在有这种情况,可能是电脑或手机…