前言¶
做網頁自動化、爬蟲或壓測時,如果所有請求共用同一個 User-Agent 和固定視口,很容易被風控一眼認出是腳本流量。手工維護 UA 列表既費事,也很難貼近真實瀏覽器的版本與分辨率分佈。下面介紹 SkillHub 上的社區 Skill「爬蟲/自動化 防封指紋僞裝(UA+分辨率池)」:把按市佔加權的 UA 與分辨率做成可調用數據池,供 Agent 或本地腳本隨機或按類型取用。
這是什麼¶
座標:@user_3ff3c268/browser-fingerprint-pool
版本:1.2.1(來源:community,分類:dev-programming)
維護方:SkillHub 發佈者 user_3ff3c268(頁面標註爲 WeituoAI 作者)
該 Skill 面向「需要像真用戶一樣輪換瀏覽器身份」的場景:內置 88+ 條桌面端 User-Agent(按 Chrome、Edge、Firefox、Safari、Opera、Linux 等分類),以及 87 個按權重分佈的屏幕分辨率;支持隨機獲取與按瀏覽器類型獲取。標籤 requires_api_key=false,不依賴外部 API Key。SkillHub 頁面顯示評分 100000、下載 5586(統計以 SkillHub 爲準)。
技能說明寫明:數據爲純本地、不聯網;實現形態爲「純數據 + 純函數」,文檔示例基於 Node ESM(fingerprint-pool.mjs),零依賴。UA 與分辨率數據抽取自 caijiqi-kaifa/electron/data/user-agents.ts 與 resolutions.ts(見 SKILL.md 說明)。
核心功能¶
根據 SKILL.md,已覈實能力如下:
- User-Agent 池:
allUserAgents爲合併後的全部 UA(88+);getRandomUserAgent()隨機返回一條;getUserAgentByType(type)按類型取 UA,type爲'chrome' | 'firefox' | 'edge' | 'safari' | 'opera' | 'random'。 - 分辨率池:
allResolutions爲帶權重重複的分辨率字符串數組(87 個);getRandomResolution()返回{ width, height };getRandomResolutionString()返回如'1920x1080';parseResolution(str)解析分辨率字符串;uniqueResolutions爲去重列表,便於 UI 展示。 - Agent 觸發:自然語言中可使用「隨機 UA」「隨機 user-agent」「UA 池」「分辨率池」「指紋池」「瀏覽器指紋」「隨機視口」「隨機瀏覽器配置」等表述,引導模型按技能文檔操作。
需要強調的是:技能只提供身份數據,不包含向瀏覽器上下文注入的邏輯;文檔建議與 playwright-stealth 等方案配合,才能把 UA、視口等真正寫入自動化環境。
安裝與啓用¶
安裝 SkillHub CLI¶
若尚未安裝 CLI,可先檢查版本:
command -v skillhub && skillhub --version
未安裝時,可按 SkillHub 官方安裝說明執行完整安裝(CLI + 默認 Skill):
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
僅安裝 CLI 時:
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only
安裝本 Skill¶
安裝時必須用 --dir 指向當前 Agent 的 skills 目錄,否則默認裝到 ./skills/ 可能不會被識別。常用路徑示例:
- Cursor:
~/.cursor/skills/ - Claude Code:
~/.claude/skills/ - Codex:
~/.codex/skills/或項目下的.agents/skills/
安裝命令(與 skillhub search 輸出一致):
skillhub install browser-fingerprint-pool --namespace user_3ff3c268 --dir ~/.cursor/skills
也可將下面提示詞交給 AI,讓其按 SkillHub 安裝說明 完成安裝:
請根據 https://skillhub.cn/install/skillhub.md,安裝 `@user_3ff3c268/browser-fingerprint-pool`。
安裝完成後,在對應 Agent 中啓用或刷新 skills 配置(各客戶端步驟以各自文檔爲準)。
典型用法¶
技能文檔中的 Node ESM 調用示例如下。路徑 ./scripts/fingerprint-pool.mjs 以技能包內佈局爲準;若你通過 Agent 使用,通常由模型按 SKILL.md 生成或引用等價邏輯。
import { getRandomUserAgent, getUserAgentByType, allUserAgents,
getRandomResolution, getRandomResolutionString, parseResolution, uniqueResolutions }
from './scripts/fingerprint-pool.mjs';
getRandomUserAgent(); // 隨機 UA
getUserAgentByType('firefox'); // 指定類型 UA
allUserAgents.length; // 88+
getRandomResolution(); // { width, height }
getRandomResolutionString(); // '1920x1080'
parseResolution('1366x768'); // { width:1366, height:768 }
uniqueResolutions; // 去重後的分辨率列表(用於 UI 展示)
在對話側,可直接描述需求,例如:「從 UA 池隨機取一個 Chrome 的 user-agent,並給 Playwright 配一個按權重隨機的 1920 級分辨率視口。」Agent 在加載本 Skill 後,應按上述 API 與注意事項給出可落地的配置片段。
技能說明還將本能力定位爲「擬人化瀏覽器採集閉環」中的指紋步驟;若流程涉及 Windows 桌面精確點擊,文檔另提到可配合 @user_3ff3c268/windows-screen-coordinate(屏幕座標助手),與本技能無強制綁定。
適用場景與注意¶
適合誰
- 爬蟲工程師、RPA 開發者,需要在腳本或 Agent 生成代碼時快速輪換 UA 與視口尺寸。
- 海外社媒或多賬號運營場景下,希望請求頭與分辨率分佈更接近真實桌面用戶(仍以目標站點規則與合規要求爲準)。
限制與注意
- 僅提供數據與函數接口說明,不替代站點 ToS、反爬策略或法律諮詢;能否「防封」取決於整體策略(代理、頻率、行爲擬人等),不能單靠 UA 池保證。
- 文檔示例爲桌面端 UA;移動端指紋不在本技能描述範圍內。
- 注入瀏覽器上下文需自行結合 Playwright、Puppeteer 等與 stealth 類方案;本 Skill 不內置注入邏輯。
- 下載包以 SkillHub 分發內容爲準;若本地包僅含
SKILL.md,應以文檔 API 爲準,並在實際工程中落實fingerprint-pool.mjs或等效實現。
結尾¶
「爬蟲/自動化 防封指紋僞裝(UA+分辨率池)」把真實瀏覽器份額思路下的 UA 與分辨率池封裝成 Agent 可識別的 Skill,減少手寫常量、統一隨機與按類型取值方式。需要安裝或查看詳情時,可訪問 SkillHub 頁面:
- https://www.skillhub.cn/skills/user_3ff3c268/browser-fingerprint-pool
- https://api.skillhub.cn/user_3ff3c268/browser-fingerprint-pool