# -*- coding: utf-8 -*- """Tencent Captcha —— 纯算还原 + 视觉求解。 分层(详见各子包 docstring): * protocol/ TencentCaptchaClient —— prehandle / PoW / tdc.js / 题目图片 / verify * telemetry/ collect 的**纯离线**生成(37 语义名 -> 38 槽 -> 4 段 XTEA)+ 密钥静态还原 * solvers/ 文字点选 / 图标点选 / 滑块 求解器 * ocr/ ddddocr + PP-OCRv4 集成识别、提示图切分 * adapters/ 站点业务适配(1ms.run) """ # ---- 协议层 ---- from .protocol.client import ( KIND_ICON_CLICK, KIND_SLIDER, KIND_TEXT_CLICK, Challenge, TencentCaptchaClient, classify_challenge, ) from .protocol.proxy import check_proxy, fetch_proxy, parse_proxies # ---- 遥测层(纯算:零 Node、零真机明文)---- from .telemetry.crypto import ( build_collect, encrypt_string, extract_eks, extract_xtea_key, generate_telemetry, split_collect_segments, ) from .telemetry.key import extract_xtea_key_pure from .telemetry.values import ( DEVICE_PROFILE, Session, generate_cd, generate_collect, trajectory_points, ) # ---- 求解器层 ---- from .solvers.icon_click import CaptchaSolver from .solvers.slider import SliderSolver from .solvers.text_click import Glyph, SolveResult, TextClickSolver, parse_instruction # ---- 识别基座 / 业务适配 ---- from .ocr.engines import DdddOcrEngine, EnsembleOcr, PpOcrEngine from .ocr.slicer import slice_prompt_image from .adapters.one_ms import OneMsAdapter __all__ = [ # 协议客户端 "TencentCaptchaClient", "Challenge", "classify_challenge", "KIND_TEXT_CLICK", "KIND_ICON_CLICK", "KIND_SLIDER", # 求解器 "TextClickSolver", "SolveResult", "Glyph", "parse_instruction", "CaptchaSolver", "SliderSolver", # 识别基座 "slice_prompt_image", "EnsembleOcr", "DdddOcrEngine", "PpOcrEngine", # 遥测 / 加密(纯算) "generate_telemetry", "generate_collect", "generate_cd", "Session", "DEVICE_PROFILE", "trajectory_points", "build_collect", "split_collect_segments", "extract_eks", "extract_xtea_key", "extract_xtea_key_pure", "encrypt_string", # 业务适配 / 代理 "OneMsAdapter", "fetch_proxy", "parse_proxies", "check_proxy", ]