Agent Skills: Data Extraction Strategy

Designs web scraping / data extraction strategies: DOM analysis, multi-tier selectors with fallbacks, validation, transformation mapping, performance planning. Use when planning to scrape a site, extract structured data from HTML/DOM, or handle pagination / anti-scraping. Triggers: 資料提取, 抓取策略, web scraping, 選擇器設計, 爬蟲規劃. Do NOT use for implementing scraper code.

UncategorizedID: tarrragon/claude/data-extraction

Install this agent skill to your local

pnpm dlx add-skill https://github.com/tarrragon/claude/tree/HEAD/skills/data-extraction

Skill Files

Browse the full folder contents for data-extraction.

Download Skill

Loading file tree…

skills/data-extraction/SKILL.md

Skill Metadata

Name
data-extraction
Description
"Designs web scraping / data extraction strategies: DOM analysis, multi-tier selectors with fallbacks, validation, transformation mapping, performance planning. Use when planning to scrape a site, extract structured data from HTML/DOM, or handle pagination / anti-scraping. Triggers: 資料提取, 抓取策略, web scraping, 選擇器設計, 爬蟲規劃. Do NOT use for implementing scraper code."

Data Extraction Strategy

設計網頁資料提取(scraping)策略的步驟化流程。本 skill 提供與角色無關的通用抓取策略——任何代理人或主線程觸發時得到同一套流程,避免策略綁定特定人格。

定位:策略規劃,非程式碼實作。產出為提取策略設計文件(選擇器規劃 / 驗證規則 / 轉換映射),供實作代理人據以撰寫抓取程式碼。本 skill 不撰寫抓取程式碼。

通用性:以下流程為跨網站通用策略骨架,不綁定任何特定書城或網站。套用到具體目標時,將各步驟的「目標對象」替換為實際網站的 DOM、欄位、載入模式。


五步驟策略流程(核心 workflow)

依序執行五個步驟,每步先確立目標再展開規劃。前一步的產出是後一步的輸入。

步驟 1:網頁資料結構分析

目標:理解目標網站的資料結構、載入機制和動態內容模式。

  1. 分析目標網站的 DOM 結構和資料排列方式
  2. 識別所有可能的資料提取點和選擇器候選
  3. 判斷內容是否動態載入、是否需要 JavaScript 執行
  4. 規劃如何處理分頁、無限捲動等載入模式
  5. 評估反爬蟲機制並規劃應對策略

步驟 2:資料提取策略設計

目標:設計完整、可行且合乎使用條款的提取方案。

  1. 規劃提取優先級:先提取關鍵資料,再提取附加資料
  2. 設計多層次選擇器:主選擇器 + 備用選擇器 + 降級方案(DOM 結構變更時的容錯來源)
  3. 規劃提取頻率與速率限制(Rate Limiting)
  4. 定義請求頭、User-Agent 等設定
  5. 規劃錯誤恢復與重試機制

多層選擇器是容錯設計核心:目標網站 DOM 結構可能在不通知的情況下變更,單一選擇器易在改版後靜默失效。主 / 備用 / 降級三層讓單一選擇器失效時仍能命中。

步驟 3:資料驗證與清理流程設計

目標:確保提取資料的品質與完整性。

  1. 定義每個欄位的驗證規則:格式、長度、有效性
  2. 設計清理邏輯:移除空格、HTML 標籤、特殊字元
  3. 規劃異常值處理:異常值檢測 + 替代方案
  4. 定義缺失資料的處理策略
  5. 設計資料完整性檢查

單欄位失敗不丟整筆:區分必要欄位與可選欄位。可選欄位提取失敗時保留該筆其餘資料,僅必要欄位缺失才視為整筆失敗,避免容錯不足導致資料大量流失。

步驟 4:資料轉換規則定義

目標:將原始提取資料轉換為目標系統需要的格式。

  1. 定義型別轉換規則(字串 → 日期 / 數字等)
  2. 規劃標準化流程:統一格式、單位轉換
  3. 設計聚合邏輯:多源資料合併、去重
  4. 定義映射規則:源資料欄位 → 系統欄位
  5. 規劃結構化輸出格式

步驟 5:提取效能與可靠性規劃

目標:確保提取過程高效可靠。

  1. 評估提取複雜度與預期執行時間
  2. 規劃並行提取策略(若適用)
  3. 設計快取機制減少重複提取
  4. 規劃監控與日誌記錄
  5. 定義效能基準與最佳化目標

When to Read Which Reference

| 情境 | 讀此 reference | |------|---------------| | 需要產出正式的「資料提取策略設計文件」,要完整章節範本(選擇器優先級表 / 驗證規則表 / 轉換映射表 / 效能評估 / 風險評估) | references/strategy-document-template.md |

完成五步驟規劃後,依範本將結論整理為策略文件交付實作代理人。


Examples

| 輸入 | 動作 | 輸出 | |------|------|------| | 「規劃如何從某商品列表頁抓取品名、價格、庫存」 | 套用五步驟:分析 DOM → 設計三層選擇器 → 定義驗證(價格為數字、品名非空)→ 映射到系統欄位 → 評估分頁載入效能 | 依 references/strategy-document-template.md 產出策略文件 | | 「目標網站改版後選擇器失效」 | 回到步驟 1 重新分析 DOM,步驟 2 補強備用 / 降級選擇器層級 | 更新後的選擇器優先級表 | | 「資料量大,抓取很慢」 | 套用步驟 5:評估複雜度、規劃並行與快取、設定效能基準 | 效能與可靠性規劃章節 |


Troubleshooting

| 症狀 | 原因 | 解法 | |------|------|------| | 改版後整批提取失敗 | 只設計單一選擇器,無容錯層 | 步驟 2 補主 / 備用 / 降級三層選擇器 | | 資料筆數遠少於預期 | 單一欄位失敗丟棄整筆 | 步驟 3 區分必要 / 可選欄位,可選失敗保留其餘 | | 被目標站封鎖 | 未規劃速率限制 / 反爬蟲應對 | 步驟 1 評估反爬蟲機制,步驟 2 設定速率限制與請求頭 | | 抓到的資料格式不一致 | 缺轉換與標準化規則 | 步驟 4 定義型別轉換與標準化流程 |


Version: 1.0.0