### **盘友圈 (panyq.com) 全流程搜索API技术文档** #### **第一部分:核心机制 — 动态 `Action ID`** `panyq.com` 的后端API调用依赖于一种动态凭证,我们称之为 `Action ID`。这是一个40位的SHA-1哈希字符串,在API请求中作为 `next-action` HTTP头的值。 **关键特性:** 1. **动态性**: `Action ID` 不是固定不变的。网站前端更新后,旧的ID会失效,导致API请求失败。 2. **多样性**: 完整的搜索流程(从获取凭证到获取最终链接)需要使用 **三个不同** 的 `Action ID`,每个ID对应流程中的一个特定步骤。 3. **来源**: 所有有效的 `Action ID` 都嵌入在网站加载的 `.js` 静态文件中。 因此,任何可靠的客户端都必须实现一套自动化的 `Action ID` 获取与验证机制,而不是硬编码这些值。 --- #### **第二部分:`Action ID` 的自动获取与验证流程** 此流程旨在从网站前端动态发现所有潜在的 `Action ID`,并通过模拟真实API调用来筛选出分别用于三个关键步骤的有效ID。 ##### **流程 1: 搜寻候选 `Action ID`** * **目标**: 从网站的JavaScript文件中收集所有可能的 `Action ID`。 * **步骤**: 1. **请求方法**: `GET` 2. **请求地址**: `https://panyq.com/` (网站主页) 3. **解析**: 从返回的HTML中,使用正则表达式 `