Lyx3314844-03/mond-spider-agent

GitHub: Lyx3314844-03/mond-spider-agent

一个整合四种原生语言框架、配备23个AI子系统和完整JS逆向工程套件的自进化智能爬虫平台,解决复杂反爬场景下的自动化数据采集问题。

Stars: 0 | Forks: 0

Mond Spider Agent

Frameworks AI Engines JS Reverse Benchmark License

## 什么是 Mond Spider Agent? 这是一个**自我进化的 AI 爬虫平台**,它通过 **23 个智能子系统**、全套 **JS 逆向工程套件**以及 **4 个原生框架**(Go、Python、Java、Rust)进行编排——能够破解代码混淆、追踪加密签名、拦截运行时加密操作,并对 WASM 模块进行反编译,且所有过程均可自动触发。 ``` ┌─────────────────────────────────────────┐ │ Mond Spider Agent │ │ SuperAgent — 23 AI Subsystems │ └──────────────────────┬──────────────────┘ │ ┌───────────┬───────────┬────────┼────────┬────────────┬────────────┐ ▼ ▼ ▼ ▼ ▼ ▼ ▼ GoSpider PySpider JavaSpider RustSpider Apify BrowserAgent JS Reverse (Go) (Python) (Java) (Rust) (Actors) (Playwright) (MCP) ``` ## 为什么选择 Mond Spider Agent? ### 对比传统爬虫(Scrapy、Puppeteer、Selenium) | 能力 | 传统爬虫 | Mond Spider Agent | |------------|------------|-------------------| | 多框架 | 单一 runtime | 4 个原生框架 + Apify actors | | Anti-bot 处理 | 手动配置 | 自动检测 + 自动规避 | | JS 逆向工程 | 无 | 8 阶段 AST 处理 + hook 引擎 + WASM | | 签名追踪 | 手动逆向 | 自动污点分析 + 切片分析 | | 自我改进 | 无 | 23 个 AI 子系统,包含进化循环 | | 跨领域学习 | 无 | 自动策略迁移 | | 代码生成 | 无 | LLM 生成新爬虫模块 | | 知识积累 | 仅限当前会话 | 所有爬取过程共享持久化图谱 | ### 对比 AI 爬虫(Crawl4AI、Firecrawl、Jina) | 能力 | AI 爬虫 | Mond Spider Agent | |------------|------------|-------------------| | 框架多样性 | 通常为单一 runtime | Go + Python + Java + Rust | | 逆向工程 | 仅限 LLM | AST + Hook + 污点分析 + WASM pipeline | | 混淆处理 | 基于 prompt | 8 阶段确定性 Babel 处理 | | 运行时拦截 | 无 | 7 类 hook 引擎 | | WASM 支持 | 无 | 二进制解析器 + 反编译器 | | 进化 | 微调 | 遗传算法 + 元认知 | | 自主目标 | 无 | 自主探索 | ## 它能爬取什么?—— 全目标覆盖 ### 社交媒体与内容平台 | 平台 | 获取内容 | 解决的核心挑战 | |----------|-------------|---------------------| | **抖音 / TikTok** | 视频列表、评论、用户资料、直播数据 | X-Bogus / X-Khronos 签名逆向,自动回放 | | **小红书** | 笔记、评论、用户画像、商品数据 | 加密签名参数追踪 + WASM 模块解析 | | **快手** | 短视频、直播、电商数据 | X-Sign 自动追踪 + Hook 引擎拦截 | | **微博** | 帖子、评论、热搜、用户关系 | 反爬绕过 + 翻页自动处理 | | **Instagram** | 帖子、Story、Reels、评论、粉丝 | GraphQL API 签名绕过 | | **Twitter / X** | 推文、用户时间线、搜索结果 | API token 自动获取 + 速率管理 | | **YouTube** | 视频元数据、评论、字幕、推荐 | InnerTube API 签名绕过 | | **Bilibili** | 视频、弹幕、评论、UP 主数据 | Wbi 签名自动生成 | | **知乎** | 问答、文章、用户、热榜 | 加密 Cookie + 反爬绕过 | | **LinkedIn** | 职位、公司、个人资料 | 登录态管理 + 反检测浏览器 | ### 电子商务与价格情报 | 平台 | 获取内容 | 解决的核心挑战 | |----------|-------------|---------------------| | **淘宝 / 天猫** | 商品详情、价格、评论、店铺数据 | 签名参数 + Token 自动刷新 | | **京东** | 商品、价格监控、评论分析 | API 签名逆向 + 反爬绕过 | | **拼多多** | 商品列表、价格、销量 | 加密请求参数追踪 | | **Amazon** | 商品信息、价格、BSR、评论 | 反机器人检测 + 验证码绕过 | | **Shopee / Lazada** | 东南亚电商数据 | 多地区 API 签名适配 | | **Shopify 商店** | 任意 Shopify 店铺数据 | 结构化 API 自动发现 | | **1688 / Alibaba** | 供应商、批发价格、MOQ | 登录态 + 分页处理 | ### 搜索引擎与数据聚合 | 目标 | 获取内容 | 解决的核心挑战 | |--------|-------------|---------------------| | **Google Search** | 搜索结果、SERP 特征、关键词排名 | 反检测 + 代理轮换 + 验证码处理 | | **Baidu** | 搜索结果、百科、知道 | JS 渲染 + Cookie 管理 | | **Bing** | 搜索结果、图片、新闻 | SPA 渲染处理 | | **Google Maps** | 商家信息、评论、坐标 | 大量分页 + 速率控制 | | **Google Scholar** | 论文、引用、作者 | 反爬 + 验证码 | | **App Store / Google Play** | App 排名、评论、下载量 | 结构化数据提取 | ### 受保护/反机器人网站 | 防护系统 | 破解方式 | |-------------------|-------------------| | **Cloudflare** (Challenge / Turnstile) | CloakBrowser 隐身模式 + 指纹匹配 + 行为模拟 | | **Akamai Bot Manager** | Hook 引擎拦截传感器数据 + 签名回放 | | **DataDome** | 自适应浏览器策略 + AI 指纹选择 | | **PerimeterX / HUMAN** | 行为模拟 + 反检测浏览器 + Cookie 生成 | | **GeeTest 验证码** | Hook 拦截验证参数 + WASM 分析 | | **reCAPTCHA v2/v3** | 行为模拟 + 分数优化 + 第三方服务对接 | | **hCaptcha** | 浏览器指纹 + 行为模式匹配 | | **自定义 WAF** | ReverseOrchestrator 自动分析 → 选择最优逆向 pipeline | ### 企业级与结构化数据 | 目标类型 | 示例 | 处理方式 | |------------|----------|----------| | **REST API** | 任意 RESTful 服务 | 自动发现 endpoint + 签名回放 + 速率管理 | | **GraphQL API** | GitHub, Shopify, Medium | Introspection 查询 + 自动字段发现 | | **WebSocket** | 实时数据流、聊天、股票行情 | WS 协议拦截 + Hook 捕获消息 | | **gRPC / Protobuf** | 微服务 API | Protobuf 消息自动推断 + 序列化/反序列化 | | **登录保护站点** | SaaS 后台、会员系统 | Cookie/Token 管理 + 会话保持 | | **分页 / 无限滚动** | 任意列表页面 | 自动翻页检测 + 滚动模拟 | | **文件下载** | PDF、Excel、图片、视频 | 多格式解析 + 流式下载 | | **暗网 / .onion** | Tor 隐藏服务 | SOCKS5 代理 + Tor 网络集成 | ### 你可以提取的特定数据类型 ``` 文本数据 结构化数据 多媒体 元数据 ───────── ────────── ────── ────── 文章/新闻 表格/列表 图片URL SEO 指标 评论/帖子 价格/库存 视频/音频流 页面性能 用户资料 排名/评分 文件/文档 API 端点 搜索结果 时间序列 直播流 站点地图 翻译内容 关系图谱 截图/快照 技术栈指纹 ``` ### 真实用例 | 用例 | Mond Spider Agent 如何提供帮助 | |----------|---------------------------| | **竞品价格监控** | 定时爬取电商平台价格变动,自动绕过反爬,价格异常告警 | | **舆情分析** | 多平台社交媒体数据采集,评论情感分析,热点追踪 | | **SEO 排名追踪** | 批量 Google/Bing 搜索结果采集,关键词排名变化监控 | | **数据标注/AI 训练** | 大规模结构化数据提取,自动清洗,格式标准化输出 | | **市场研究** | 跨平台商品/服务数据采集,趋势分析,竞品功能对比 | | **学术研究** | 论文/引用数据采集,学术社交网络分析 | | **安全审计** | API 签名强度评估,反爬策略有效性测试 | | **内容聚合** | 多源内容采集、去重、结构化输出到数据库或 API | ## 快速开始 ``` # 1. Clone the repository git clone https://github.com/Lyx3314844-03/mond-spider-agent.git cd mond-spider-agent/spider # 2. 安装依赖 pip install -r requirements.txt cd js_reverse_mcp && npm install && cd .. # 3. 配置 API key export OPENAI_API_KEY="sk-xxx" # or use local model via config/ # 4. 运行 python -m mond_agent.super_agent --url "https://target-site.com" # 5. 使用完整 reverse engineering pipeline 运行 python -m mond_agent.super_agent --url "https://target-site.com" --reverse auto ```
特定框架的使用方法 ``` # GoSpider — 高吞吐量爬取 cd gospider && go run main.go --url "https://target-site.com" # JavaSpider — 使用 Redis scheduler 进行分布式爬取 cd javaspider && mvn exec:java -Dexec.mainClass="com.mond.Spider" # RustSpider — 内存安全的高性能爬取 cd rustspider && cargo run -- --url "https://target-site.com" # Apify Cloud Actors python -m mond_agent.super_agent --url "https://target-site.com" --engine apify ```
## 架构概览 ### 4 个原生爬虫框架 | 框架 | 语言 | 优势 | 核心特性 | |-----------|----------|-----------|--------------| | **GoSpider** | Go | 原始吞吐量、并发 | 基于 goroutine 的并行、低内存、快速启动 | | **PySpider** | Python | 灵活性、生态系统 | Playwright/Scrapling/CloakBrowser、Node.js 逆向桥接 | | **JavaSpider** | Java | 企业级规模 | 基于 Redis 的调度器、分布式 worker pool、容错能力 | | **RustSpider** | Rust | 安全性 + 速度 | 零成本抽象、内存安全、监控中心 + API server | 每个框架作为独立的子进程运行,由统一的 **Adapter Layer** 管理,负责处理健康检查、进程生命周期和浏览器策略回退。 ### 浏览器策略回退 当原生爬虫遇到 JS 渲染页面时,适配器层会透明地回退到无头浏览器(headless browsers): | 策略 | 引擎 | 适用场景 | |----------|--------|----------| | `playwright` | Chromium (Playwright) | 常规 JS 渲染、SPA 爬取 | | `scrapling` | Scrapling + StealthFetcher | 反检测浏览器自动化 | | `cloakbrowser` | CloakBrowser | 重度反机器人规避(Cloudflare、DataDome) | | `auto` | 由 AI 选择 | 根据网站指纹选择最佳策略 | ## 23 个 AI 子系统 ### 核心 —— 爬取执行与智能 | 引擎 | 功能说明 | |--------|-------------| | **AgenticLoop** | 6 阶段循环:规划 → 评估 → 执行 → 自愈 → 进化 → 反思 | | **KnowledgeGraph** | 实体关系图谱,跨爬取知识积累 | | **SmartCache** | 内容指纹识别 + 变更检测 + 预测性重爬 | | **SelectorSynthesis** | 自动生成 CSS/XPath 选择器,并由 LLM 辅助修复 | | **AntiDetection** | 指纹轮换、人类行为模拟、风险评分 | ### 协调 —— 多智能体集群 | 引擎 | 功能说明 | |--------|-------------| | **MultiAgentCoordinator** | 在爬虫智能体集群中进行基于角色的任务分发 | | **Planner** | 多步骤目标分解和任务规划 | | **Critic** | 输出质量验证和自我评估 | | **RepairAgent** | 自动故障诊断和自我修复 | ### 进化 —— 自我改进 | 引擎 | 功能说明 | |--------|-------------| | **StrategyEvolution** | 基于 A/B 测试的遗传算法驱动优化 | | **ExperienceStore** | 来自过往爬取的持久化经验数据库 | | **WorldModel** | 对网站架构、反爬虫机制、API 规范的因果推理 | | **CuriosityEngine** | 对未知网站的主动探索以发现新模式 | | **TransferLearning** | 通过指纹相似性进行跨领域策略迁移 | | **DeepMetacognition** | 能力差距分析、学习高原检测 | | **AutonomousGoalSetter** | 为递归改进生成自我导向的目标 | | **FreeCodeSynthesis** | LLM 驱动的 Python 模块生成,包含 AST 验证 + 沙箱 | ### 逆向工程 —— 击败 JS 反爬 | 引擎 | 功能说明 | |--------|-------------| | **ASTDeobfuscator** | 8 阶段 Babel AST 处理以解混淆 JS | | **HookEngine** | 7 类 runtime 拦截(加密/网络/存储/随机/时间/DOM/WASM) | | **SignatureTracer** | 污点分析 + 程序切片 → 自动 Python 重放 | | **WasmReverse** | 纯 Python WASM 二进制解析器 + 反编译器 + JS wrapper 生成 | | **ReverseOrchestrator** | 选择最优逆向 pipeline 的统一调度器 | ### 集成 | 引擎 | 功能说明 | |--------|-------------| | **MondAgent API** | 用于外部集成和编排的高级 API | ## Super Run:智能爬取流水线 `SuperAgent.super_run(url)` 执行完整的 8 阶段流水线: ``` Step 1: SmartCache Lookup → Cache hit? Return cached result Step 2: StrategyEvolution → Best strategy from genetic algorithm Step 3: WorldModel Prediction → Predict anti-bot, rendering mode, rate limits Step 4: TransferLearning → Reuse strategies from similar domains Step 5: AntiDetection → Rotate fingerprint, inject human behavior Step 6: AgenticLoop Execution → Plan → Critic → Execute → Self-Heal → Evolve → Reflect ├── 6a: Failure? → RepairAgent auto-diagnosis ├── 6b: Still failing? → MultiAgentCoordinator swarm fallback └── 6c: 403/Blocked? → ReverseOrchestrator auto-trigger Step 7: KnowledgeGraph Update → Extract entities, update cross-crawl knowledge Step 8: Strategy Fitness + Evolution → Score performance, trigger genetic evolution ``` ## 自我进化循环 Mond Spider Agent 不仅仅是一个爬虫——它是一个**自我改进系统**: ``` ┌──────────────────────────────────────────────────────────┐ │ AutonomousGoalSetter │ │ Discovers capability gaps → generates exploration goals │ └──────────────┬────────────────────────────┬──────────────┘ │ proactive goals │ passive tasks ▼ ▼ ┌────────────────────────┐ ┌──────────────────────────┐ │ CuriosityEngine │ │ AgenticLoop │ │ Explores unknown sites│ │ Plan→Critic→Execute→ │ │ │ │ SelfHeal→Evolve→Reflect │ └────────────┬───────────┘ └────────────┬─────────────┘ │ exploration results │ task results ▼ ▼ ┌──────────────────────────────────────────────────────────┐ │ WorldModel │ │ Causal model: site architecture, anti-bot, API │ │ conventions, rate-limit behavior │ └──────────────┬────────────────────────────┬──────────────┘ │ causal predictions │ domain model ▼ ▼ ┌──────────────────────────┐ ┌────────────────────────────┐ │ TransferLearning │ │ DeepMetacognition │ │ Cross-domain migration │ │ "Why can't I learn X?" │ └──────────────────────────┘ └────────────────────────────┘ │ │ ▼ ▼ ┌──────────────────────────┐ ┌────────────────────────────┐ │ FreeCodeSynthesis │ │ Feedback → GoalSetter │ │ LLM generates new │ │ (recursive improvement) │ │ crawler modules │ │ │ └──────────────────────────┘ └────────────────────────────┘ ``` ## 逆向工程 —— 深入解析 ### ASTDeobfuscator:8 阶段 Babel 处理 | 处理阶段 | 技术 | 解决问题 | |------|-----------|----------------| | **String Concat** | `"a" + "b"` → `"ab"` | 字符串拆分混淆 | | **Boolean If** | `if(true){...}` → `{...}` | 无效条件分支 | | **Constant Fold** `0xa + 0xb` → `21`, `!![]` → `true` | 常量表达式混淆 | | **String Array** | `_0xabc[0x12]` → literal string | obfuscator.io 字符串阵列编码 | | **Dead Code** | 移除无法到达的分支 | `if(false){...}` 及其死路径 | | **Identifier Rename** | `_0x1a2b3c` → 语义化名称 | 十六进制编码的标识符重命名 | | **Control Flow** | 扁平化 `switch` 状态机 | 控制流平坦化 | | **Anti-Debug** | 剔除 `debugger` 语句 | 反调试陷阱 | **可识别的混淆器指纹**:obfuscator.io、javascript-obfuscator、sojson、jsjiami、packer 等 7 种以上。 ### HookEngine:运行时拦截 | 类别 | 拦截的 API | 获取的情报 | |----------|-----------------|--------------| | **Crypto** | `crypto.subtle.*`, `CryptoJS.*`, `forge.*` | 算法、密钥材料、IV/nonce | | **Network** | `fetch`, `XMLHttpRequest`, `axios` | 签名参数位置、Header 注入 | | **Storage** | `localStorage`, `sessionStorage`, `cookie` | Token/状态来源识别 | | **Random** | `Math.random`, `crypto.getRandomValues` | 随机种子追踪 | | **Time** | `Date.now`, `performance.now` | 时间戳依赖关系映射 | | **DOM** | `document.querySelector*`, `getElementById` | 依赖 DOM 的逻辑识别 | | **WASM** | `WebAssembly.instantiate*` | 自动捕获 WASM 模块 | ### SignatureTracer:5 阶段流水线 ``` 1. Hook Point Identification → Find fetch()/XHR/axios call sites 2. Parameter Slicing → Backward slice from target param 3. Taint Analysis → Trace data flow to sink 4. Generation Function Extract → Isolate signing function 5. Python Translation → LLM-assisted JS→Python with verification ``` **支持项目**:X-Sign, X-Bogus, X-Khronos, X-Gorgon, X-Helios, X-Ladon, X-Argus, sign, signature, token 以及任意自定义参数。 ### WasmReverse:WebAssembly 分析 | 能力 | 描述 | |------------|-------------| | **二进制解析** | LEB128 解码、全节解析 | | **导出分析** | 带有类型签名的导出函数 | | **字符串提取** | 从数据节恢复字符串字面量 | | **签名检测** | 加密/签名函数启发式检测 | | **JS Wrapper 生成** | 用于 Node.js WASM 调用的 JavaScript 胶水代码 | ### ReverseOrchestrator:统一流水线 ``` Page Analysis → Obfuscator Detection → Anti-Bot Classification │ │ ▼ ▼ ┌───────────────┐ ┌───────────────┐ │ obfuscator.io │ │ Cloudflare │ │ js-obfuscator │ │ Akamai │ │ sojson │ │ DataDome │ └───────┬───────┘ └───────┬───────┘ │ │ ▼ ▼ ASTDeobfuscator HookEngine + Runtime (8 Babel passes) Interception │ │ └──────────┬───────────────┘ ▼ SignatureTracer (taint + slice → Python replay) │ ▼ FreeCodeSynthesis (register replay module for reuse) ``` ## 基准测试 —— 23/23 全部通过 | 测试套件 | 测试项 | 状态 | |------------|-------|--------| | **ASTDeobfuscator** | 字符串拼接、布尔条件判断、常量折叠、字符串阵列、死代码、标识符重命名、控制流、反调试 | **8/8** | | **HookEngine** | profile 构建、crypto、network、events、trace 导出、脚本生成、类别过滤、stack trace、上下文元数据、多类别 | **10/10** | | **SignatureTracer** | MD5 header、SHA256 query、HMAC body | **3/3** | | **WasmReverse** | 导出分析(3 个模块)、字符串提取、JS wrapper 生成 | **5/5** | | 组件 | 检查命令 | 结果 | |-----------|-------|--------| | Go (gospider) | `go vet ./...` | Clean | | Java (javaspider) | `mvn compile` | Clean | | Rust (rustspider) | `cargo check` | Clean | | Python (所有模块) | 32/32 导入 | Clean | ## 技术栈 | 层级 | 技术 | |-------|-------------| | **爬虫框架** | Go、Python、Java、Rust | | **AI / LLM** | OpenAI API、本地模型支持、LLM 驱动的代码生成 | | **浏览器自动化** | Playwright、Scrapling、CloakBrowser | | **JS 逆向工程** | Babel AST、Node.js 桥接 | | **WASM 分析** | 采用 LEB128 解码的纯 Python 二进制解析器 | | **反检测** | 指纹轮换、人类行为模拟、代理 | | **知识系统** | 实体关系图、经验存储、跨领域迁移 | | **进化** | 遗传算法、适应度评分、A/B 测试、自主目标 | | **部署** | Docker、Kubernetes、独立部署、Apify 云端 actors | ## 项目结构 ``` spider/ ├── mond_agent/ # ← AI SuperAgent — the brain │ ├── super_agent.py # Entry point: super_run() orchestrates everything │ ├── agentic_loop.py # Core execution cycle │ ├── knowledge_graph.py # Cross-crawl knowledge │ ├── smart_cache.py # Intelligent caching │ ├── multi_agent.py # Swarm coordination │ ├── anti_detection.py # Fingerprint + behavior │ ├── selector_synthesis.py # Auto CSS/XPath │ ├── strategy_evolution.py # Genetic algorithm │ ├── world_model.py # Causal site modeling │ ├── curiosity_engine.py # Proactive exploration │ ├── transfer_learning.py # Cross-domain migration │ ├── free_code_synthesis.py # LLM code generation │ ├── deep_metacognition.py # Self-analysis │ ├── autonomous_goals.py # Self-directed goals │ └── adapters/ # ← calls the 4 frameworks below │ ├── go_adapter.py # ──→ gospider/ │ ├── py_adapter.py # ──→ pyspider/ │ ├── java_adapter.py # ──→ javaspider/ │ ├── rust_adapter.py # ──→ rustspider/ │ └── apify_adapter.py # ──→ Apify cloud │ ├── js_reverse_mcp/ # ← JS Reverse Engineering — triggered by adapters │ ├── ast_deobfuscator.py # 8 Babel AST passes │ ├── hook_engine.py # Runtime JS hook injection │ ├── signature_tracer.py # Taint + slice tracing │ ├── wasm_reverse.py # WASM binary analysis │ ├── orchestrator.py # ← called by mond_agent when 403/blocked │ └── benchmark/ # 23 benchmark tests │ ├── gospider/ # Go crawler (called by go_adapter) ├── pyspider/ # Python crawler (called by py_adapter) │ └── node_reverse/ # Node.js reverse bridge ├── javaspider/ # Java crawler (called by java_adapter) ├── rustspider/ # Rust crawler (called by rust_adapter) │ ├── config/ # API keys, engine selection, browser strategy ├── deploy/ # Docker, K8s, Apify deployment configs ├── examples/ # Usage examples and presets └── docs/ # Documentation and assets ``` **调用流程**:`super_agent.py` → `adapters/` → 框架子进程 → 遇到 403/被封锁时 → `js_reverse_mcp/orchestrator.py` → 逆向 pipeline → `free_code_synthesis.py`(生成重放模块) ## 联系方式 / 联系方式

WeChat GitHub

**微信 WeChat**: `3314844`
## 许可协议 MIT License。有关详细信息,请参阅 [LICENSE](LICENSE)。

使用 Go、Python、Java、Rust、Node.js、Babel、Playwright 以及大量的 AI 技术构建。

标签:AI爬虫, C2, JavaScript逆向, JS文件枚举, MITM代理, 反爬虫对抗, 可视化界面, 多语言架构, 子域名突变, 搜索引擎查询, 日志审计, 特征检测, 请求拦截, 逆向工具