DeepSeek Harness (DSH) 提供了一個內置的 web_fetch 工具,但直接請求經常被目標網站返回 403 或機器人挑戰攔截。要讀取被封鎖的頁面(如零售、房地產或職位列表),需要繞過機器人檢測。該插件路由此工具的流量通過 Decodo Web Scraping API,使智能體無需更改提示或添加新工具即可獲取內容。
這是什麼¶
這是一個 DeepSeek Harness (DSH) 插件,由 Decodo 維護。它將智能體的內置 web_fetch 工具後端切換爲 Decodo Web Scraping API。這允許智能體在需要時通過 Decodo 的反機器人處理獲取內容,保持標準 DSH 工作流不變。
核心功能¶
- 統一路由:所有
web_fetch請求都通過 Decodo,智能體無需選擇提供者或學習新工具。 - Markdown 輸入:默認情況下,API 返回 Markdown,DSH 傳遞給模型。如果無法轉換,則返回原始 HTML,DSH 會對其進行轉換。
- 顯式固定:插件將提供者固定爲
decodo,以便在其他提供者掛載時也能正常工作。 - 請求限制:每個進程的請求上限,以防止智能體循環導致計費激增。
- 可操作的錯誤:認證、速率限制、驗證、超時和抓取錯誤映射到特定代碼和單行消息,供模型處理。
安裝與啓用¶
安裝需要 Node.js 20+ 和 pnpm。使用 dsh CLI 管理器安裝插件:
pnpm add -g @deepseek-ai/dsh
dsh plugin --profile <name> add @decodo/dsh-web-fetch
<name> 是配置文件名稱(例如 headless 用於單次運行,web 用於 UI)。將此安裝到每個所需的配置文件中。
配置與用法¶
安裝後,設置 API 密鑰。從 Decodo 儀表板獲取 Web Data API 密鑰並導出:
export DECODO_API_KEY='your-api-key'
對於舊計劃,使用 SCRAPER_API_TOKEN。要在配置文件中覆蓋設置(例如更改超時或密鑰環境變量),編輯 cordis.patch.yml。配置示例:
- id: web-fetch-decodo
config:
apiKeyEnv: DECODO_API_KEY
要測試設置並查看提供者是否已固定:
dsh --profile <name> --dump-config | grep -A4 -E '^- id: (web|tool-web|web-fetch-decodo)$'
示例用法:
dsh --profile headless "Fetch https://www.zillow.com/ and tell me the first heading"
適用場景與注意事項¶
此插件適合需要讀取實時網頁的智能體,特別是那些被封鎖的頁面(零售、房地產、旅遊、票務)或需要住宅 IP 的頁面。常見用例包括競品和定價研究、線索和公司研究以及文檔收集。
- 先決條件:需要 Node.js 20+ 和 pnpm。
- 限制:某些網站可能會拒絕請求。成功取決於目標頁面。
- 計費:智能體循環是主要的計費風險,因此請求限制至關重要。
- 許可證:MIT 許可證。
- 無需信用卡:開始使用不需要信用卡。
結尾¶
該插件將 DSH 的 web_fetch 工具連接到 Decodo,無需更改提示或添加新工具即可處理機器人檢測。它提供 Markdown 輸出和錯誤處理,以便智能體可以響應抓取失敗。