anti-detect-browser

安装量: 14.6K
排名: #553

安装

npx skills add https://github.com/antibrow/anti-detect-browser-skills --skill anti-detect-browser

Anti-Detect Browser SDK Launch Chromium instances with real-device fingerprints via standard Playwright APIs. Each browser gets a unique, consistent digital identity - undetectable by anti-bot systems. npm package: anti-detect-browser Dashboard: https://antibrow.com REST API base: https://antibrow.com/api/v1/ Documentation: https://antibrow.com/docs When to use Multi-account management - Run dozens of social media, e-commerce, or ad accounts on the same machine without linking. Each browser profile has its own fingerprint, cookies, and storage. Web scraping & data collection - Rotate fingerprints across scraping sessions to avoid detection and fingerprint-IP correlation bans. Ad verification & competitive intelligence - View ads and content as different user profiles across regions and device types. Social media automation - Manage multiple accounts with persistent profiles that survive browser restarts. E-commerce operations - Operate multiple seller/buyer accounts with fully isolated browser environments. AI agent browser control - Run as an MCP server so AI agents (Claude, GPT, etc.) can launch, navigate, and interact with anti-detect browsers through tool calls. QA & cross-environment testing - Test how your site behaves under different browser fingerprints, screen sizes, and device configurations. Quick start npm install anti-detect-browser import { AntiDetectBrowser } from 'anti-detect-browser' // Get your API key at https://antibrow.com const ab = new AntiDetectBrowser ( { key : 'your-api-key' } ) const { browser , page } = await ab . launch ( { fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] } , profile : 'my-account-01' , proxy : 'http://user:pass@host:port' , } ) // Standard Playwright API from here — zero learning curve await page . goto ( 'https://example.com' ) await browser . close ( ) Core concepts Profiles — persistent browser identities A profile saves cookies, localStorage, and session data across launches. Same profile name = same stored state next time. // First launch — fresh session const { page } = await ab . launch ( { profile : 'shop-01' } ) await page . goto ( 'https://shop.example.com/login' ) // ... login ... await browser . close ( ) // Later — session restored, already logged in const { page : p2 } = await ab . launch ( { profile : 'shop-01' } ) await p2 . goto ( 'https://shop.example.com/dashboard' ) // no login needed Fingerprints — real device data from the cloud Each launch fetches a real fingerprint collected from actual devices. Over 30 categories (Canvas, WebGL, Audio, Fonts, WebRTC, WebGPU, etc.) with 500+ individual parameters. // Windows Chrome, version 130+ await ab . launch ( { fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] , minBrowserVersion : 130 } , } ) // Mac Safari await ab . launch ( { fingerprint : { tags : [ 'Apple Mac' , 'Safari' ] } , } ) // Mobile Android await ab . launch ( { fingerprint : { tags : [ 'Android' , 'Mobile' , 'Chrome' ] } , } ) Available filter tags: Microsoft Windows , Apple Mac , Android , Linux , iPad , iPhone , Edge , Chrome , Safari , Firefox , Desktop , Mobile , Windows 7 , Windows 8 , Windows 10 Visual identification — tell windows apart at a glance When running many browsers simultaneously, each window gets a floating label, title prefix, and unique theme color. await ab . launch ( { profile : 'twitter-main' , label : '@myhandle' , // floating label + window title color : '#e74c3c' , // unique window border color } ) Proxy integration Route each browser through a different proxy for geo-targeting or IP rotation. await ab . launch ( { proxy : 'socks5://user:pass@us-proxy.example.com:1080' , fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] } , profile : 'us-account' , } ) Live View — watch headless browsers in real time Monitor headless sessions from the https://antibrow.com dashboard. Useful for debugging AI agent actions or letting team members observe. const { liveView } = await ab . launch ( { headless : true , liveView : true , } ) console . log ( 'Watch live:' , liveView . viewUrl ) // Share this URL — anyone with access can see the browser screen Inject into existing Playwright setup Already have Playwright scripts? Add fingerprints without changing your workflow. import { chromium } from 'playwright' import { applyFingerprint } from 'anti-detect-browser' const browser = await chromium . launch ( ) const context = await browser . newContext ( ) await applyFingerprint ( context , { key : 'your-api-key' , fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] } , profile : 'my-profile' , } ) const page = await context . newPage ( ) await page . goto ( 'https://example.com' ) MCP server mode — for AI agents Run as an MCP server so AI agents can launch and control fingerprint browsers via tool calls. { "mcpServers" : { "anti-detect-browser" : { "command" : "npx" , "args" : [ "anti-detect-browser" , "--mcp" ] , "env" : { "ANTI_DETECT_BROWSER_KEY" : "your-api-key" } } } } Available tools: Tool What it does launch_browser Start a new fingerprint browser session close_browser Close a running session navigate Go to a URL screenshot Capture the current screen click / fill Interact with page elements evaluate Run JavaScript on the page get_content Extract text from the page or a specific element start_live_view Stream the browser screen to https://antibrow.com dashboard stop_live_view Stop live streaming list_sessions List all running browser instances list_profiles List all saved profiles Workflow examples Multi-account social media const accounts = [ { profile : 'twitter-1' , label : '@brand_main' , color : '#1DA1F2' } , { profile : 'twitter-2' , label : '@support' , color : '#FF6B35' } , { profile : 'twitter-3' , label : '@personal' , color : '#6C5CE7' } , ] for ( const acct of accounts ) { const { page } = await ab . launch ( { fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] } , proxy : getNextProxy ( ) , ... acct , } ) await page . goto ( 'https://twitter.com' ) } Scraping with fingerprint rotation for ( const url of urlsToScrape ) { const { browser , page } = await ab . launch ( { fingerprint : { tags : [ 'Desktop' , 'Chrome' ] , minBrowserVersion : 125 } , proxy : rotateProxy ( ) , } ) await page . goto ( url ) const data = await page . evaluate ( ( ) => document . body . innerText ) saveData ( url , data ) await browser . close ( ) } Headless monitoring with live view const { page , liveView } = await ab . launch ( { headless : true , liveView : true , profile : 'price-monitor' , fingerprint : { tags : [ 'Windows 10' , 'Chrome' ] } , } ) // Share the live view URL with your team console . log ( 'Dashboard:' , liveView . viewUrl ) while ( true ) { await page . goto ( 'https://shop.example.com/product/123' ) const price = await page . textContent ( '.price' ) if ( parseFloat ( price ) < targetPrice ) notify ( price ) await page . waitForTimeout ( 60_000 ) } REST API Base URL: https://antibrow.com/api/v1/ — all endpoints require Authorization: Bearer header. Fingerprints Method Endpoint Description GET /fingerprints/fetch Fetch a fingerprint matching filter criteria. Returns { dataUrl } — download the presigned URL for full fingerprint data. GET /fingerprints/versions List available browser versions Query parameters for /fingerprints/fetch : tags , id , minBrowserVersion , maxBrowserVersion , minWidth , maxWidth , minHeight , maxHeight Profiles Method Endpoint Description GET /profiles List all profiles POST /profiles Create a new profile (server assigns a random fingerprint). Returns profile info including dataUrl for immediate fingerprint data download. GET /profiles/:name Get profile details with dataUrl for fingerprint data download DELETE /profiles/:name Delete a profile POST /profiles request body: { "name" : "my-profile" , "tags" : [ "Windows 10" , "Chrome" ] } POST /profiles response (201): { "name" : "my-profile" , "tags" : [ "Windows 10" , "Chrome" ] , "ua" : "Mozilla/5.0 ..." , "browserVersion" : 131 , "width" : 1920 , "height" : 1080 , "createdAt" : "2025-01-01T00:00:00.000Z" , "dataUrl" : "https://r2.example.com/fingerprints/..." } The dataUrl is a presigned R2 URL (valid for 10 minutes) pointing to the full fingerprint JSON data (~9MB). Download it directly — no additional API call needed. Get started Sign up at https://antibrow.com (free tier: 2 browser profiles) Get your API key from the dashboard npm install anti-detect-browser Launch your first anti-detect browser Full documentation: https://antibrow.com/docs

返回排行榜