1.3K Star开源好工具,跳过图形验证码

1.3K Star开源好工具,跳过图形验证码

软件介绍Hcaptcha-challenger 是一个开源的 Python 软件包,旨在破译 hCaptcha 验证码系统。hCaptcha 是一种人机验证系统,被许多网站用于保护其服务免受恶意自动化行为的侵害。然而,这种保护机制对于某些合法用户来说可能过于繁琐。

Hcaptcha-challenger 通过使用机器学习和图像处理技术,可以自动分析和识别 hCaptcha 验证码,从而帮助用户绕过人机验证步骤。

功能特点自动破解 hCaptcha 验证码:Hcaptcha-challenger 使用先进的机器学习和图像处理技术来识别和破解 hCaptcha 验证码,从而为用户提供了一种简单而有效的解决方案。高效准确:该软件包经过优化,可以高效地处理大量的验证码,并提供准确的破译结果。多种识别模式:为了适应不同类型和复杂度的 hCaptcha 验证码,Hcaptcha-challenger 提供了多种识别模式,以满足不同用户的需求。灵活的配置选项:用户可以根据自己的需求和环境,通过配置参数来调整识别模型的参数,以达到更好的破解效果。客户端和服务器端支持:Hcaptcha-challenger 提供客户端和服务器端两种使用方式,方便用户根据自己的需求选择。使用步骤1.下载和安装:通过 GitHub 页面或 pip 工具下载 hcaptcha-challenger 软件包,并根据指示进行安装。代码语言:javascript复制pip insatll -U pip

pip install -U hcaptcha-challenger[playwright]

2.导入和初始化:在 Python 代码中导入 hcaptcha-challenger,并进行初始化设置。代码语言:javascript复制# -*- coding: utf-8 -*-

# Time : 2023/9/2 3:30

# Author : QIN2DIM

# GitHub : https://github.com/QIN2DIM

# Description:

from __future__ import annotations

import asyncio

from pathlib import Path

from loguru import logger

from playwright.async_api import BrowserContext as ASyncContext, async_playwright

import hcaptcha_challenger as solver

from hcaptcha_challenger.agents import AgentT

from hcaptcha_challenger.utils import SiteKey

# Init local-side of the ModelHub

clip_available = True

solver.install(upgrade=True, clip=clip_available)

# Save dataset to current working directory

tmp_dir = Path(__file__).parent.joinpath("tmp_dir")

sitekey = SiteKey.user_easy

@logger.catch

async def hit_challenge(context: ASyncContext, times: int = 8):

page = await context.new_page()

agent = AgentT.from_page(page=page, tmp_dir=tmp_dir, self_supervised=clip_available)

await page.goto(SiteKey.as_sitelink(sitekey))

await agent.handle_checkbox()

for pth in range(1, times):

result = await agent.execute()

probe = list(agent.qr.requester_restricted_answer_set.keys())

question = agent.qr.requester_question

print(f">> {pth} - Challenge Result: {result} - {question=} {probe=}")

match result:

case agent.status.CHALLENGE_BACKCALL:

await page.wait_for_timeout(500)

fl = page.frame_locator(agent.HOOK_CHALLENGE)

await fl.locator("//div[@class='refresh button']").click()

case agent.status.CHALLENGE_SUCCESS:

return

async def bytedance():

# playwright install chromium --with-deps

async with async_playwright() as p:

browser = await p.chromium.launch(headless=False)

context = await browser.new_context(locale="en-US")

await hit_challenge(context)

if __name__ == "__main__":

asyncio.run(bytedance())

3.配置参数:根据所需的识别模式和其他配置选项,设置相应的参数。这可能包括选择识别模型、调整图像处理参数等。4.提取验证码图像:通过网站或服务的 API 获取 hCaptcha 验证页面,并提取出包含验证码的图像。这通常需要提供一些特定的信息,例如页面 URL 或其他识别标识。5.进行识别:使用 hcaptcha-challenger 提供的识别函数,对提取的图像进行识别操作。该步骤将自动处理验证码图像并尝试破解其内容。6.获取结果:根据返回的结果,判断验证码识别是否成功。如果成功,可以继续进行后续操作,例如自动填写表单或进行其他相关任务。否则,可能需要重新尝试或调整配置参数以改进识别效果。创作不易分享,赞,在看,三连支持一波,感谢。↓↓↓

相关推荐

爱是什么什么的句子(39句)
365平台地址体育

爱是什么什么的句子(39句)

⏱️ 08-15 ⭐ 1160
高效会议的十大原则
365平台地址体育

高效会议的十大原则

⏱️ 09-02 ⭐ 141
什么是基督徒的意念(冥思)?
365平台地址体育

什么是基督徒的意念(冥思)?

⏱️ 07-12 ⭐ 4000