# Icp Batch Skill

> 批量处理 domains.xlsx：提取域名，优先命中本地缓存，缺失时调用 ICP 备案查询 API（AppCode 模式），生成/更新缓存与结果文件，并将备案主体/备案号写回 Excel 末两列。 Use when this capability is needed.

- Skill: `tomevault-io/icp-batch-skill` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/icp-batch-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/icp-batch-skill/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/icp-batch-skill

---


# ICP 批处理工作流

此技能封装了整套批量查询流程，适用于类似 `domains.xlsx` 的表格：
- 从表头含“链接”的列提取域名（保留去重，非标准值也保留）。
- 优先使用本地缓存 `icp_results.csv`；仅对缺失或失败记录调用 API。
- 写回/更新：
  - `icp_results.csv`：完整原始响应缓存（domain,status_code,error_header,body）。
  - `icp_success.csv`：解析后的成功条目（code=1）。
  - 原始 Excel 在末尾追加两列：备案主体、备案号。

## 运行前准备
- Python 3.9+，依赖：`pip install openpyxl requests`。
- AppCode 可通过环境变量、`--appcode`、或 `appcode.txt`（同目录一行内容）提供；未提供会提示输入。
- 默认文件：`domains.xlsx`，若找不到会弹出文件选择器；执行过程中会显示进度与错误提示。

## 快速使用
```bash
python icp-batch-skill/scripts/run_icp_batch.py \
  --workbook domains.xlsx \
  --cache icp_results.csv \
  --success icp_success.csv
```
参数说明（均有默认，可省略）：
- `--workbook`：待处理 Excel（默认 domains.xlsx）。
- `--cache`：缓存文件（默认 icp_results.csv）。
- `--success`：成功解析输出（默认 icp_success.csv）。

## 过程要点
1) 提取域名：优先匹配表头等于“链接”的列，否则使用首列。对每行提取正则域名；无匹配则使用原文本。
2) 缓存策略：
   - 命中且 `status_code=200` 且响应 `code=1` → 直接复用。
   - 其他情况 → 调用 API `GET https://domainicp.market.alicloudapi.com/do?domain=...`，头 `Authorization: APPCODE <APP_CODE>`。
3) 写回：
   - 追加两列表头：`备案主体`、`备案号`，按行填充命中数据（无则留空）。
   - `icp_results.csv` 覆盖写入完整域名顺序。
   - `icp_success.csv` 写入成功解析条目，便于后续复用。

## 常见问题
- 403/鉴权失败：检查 APP_CODE 是否有效、套餐授权正常。
- 非标准域名：脚本保留并尝试查询，若返回 code=0 / 字段为空，输出空。
- 如需更换 API Host/Path，可用参数 `--host`、`--path`（见脚本）。

## 资源
- 脚本：`scripts/run_icp_batch.py`

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/striveh) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-13 -->

