爬虫浏览器 - 浏览器 API

简化您的动态抓取操作。在完全托管的浏览器上运行并扩展您的 Puppeteer、Selenium 和 Playwright 脚本,内置验证码解决和自动化代理管理。

支持支付宝等多种支付方式
爬虫浏览器 - 浏览器 API
  • 自动扩展
    基础设施
  • 通过 Chrome DevTools 进行实时监控
  • 全球地理位置和 ASN 定位
  • 从大量使用 JavaScript 的网站中提取数据
值得信赖 全球 超20000 位客户

基于云的动态抓取

浏览器 API 专为基于浏览器的数据收集工作流而设计,适用于需要完整页面渲染、类用户交互
和高级解锁能力的场景。

轻松集成

只需更改单个端点,即可通过 Puppeteer、Selenium 或 Playwright 连接。

内置调试

使用 Chrome DevTools 实时排查并监控您的抓取会话。

全托管浏览器

云托管浏览器,内置代理轮换,并针对大规模抓取优化。

                              const pw = require('playwright');

const SBR_CDP = 'wss://brd-customer-CUSTOMER_ID-zone-ZONE_NAME:[email protected]:9222';

async function main() {
    console.log('Connecting to Browser API...');
    const browser = await pw.chromium.connectOverCDP(SBR_CDP);
    try {
        const page = await browser.newPage();
        console.log('Connected! Navigating to https://example.com...');
        await page.goto('https://example.com');
        console.log('Navigated! Scraping page content...');
        const html = await page.content();
        console.log(html);
    } finally {
        await browser.close();
    }
}

main().catch(err => {
    console.error(err.stack || err);
    process.exit(1);
});
                              
                            
                              import asyncio
from playwright.async_api import async_playwright

SBR_WS_CDP = 'wss://brd-customer-CUSTOMER_ID-zone-ZONE_NAME:[email protected]:9222'

async def run(pw):
    print('Connecting to Browser API...')
    browser = await pw.chromium.connect_over_cdp(SBR_WS_CDP)
    try:
        page = await browser.new_page()
        print('Connected! Navigating to https://example.com...')
        await page.goto('https://example.com')
        print('Navigated! Scraping page content...')
        html = await page.content()
        print(html)
    finally:
        await browser.close()

async def main():
    async with async_playwright() as playwright:
        await run(playwright)

if __name__ == '__main__':
    asyncio.run(main())
                              
                            
                              const puppeteer = require('puppeteer-core');

const SBR_WS_ENDPOINT = 'wss://brd-customer-CUSTOMER_ID-zone-ZONE_NAME:[email protected]:9222';

async function main() {
    console.log('Connecting to Browser API...');
    const browser = await puppeteer.connect({
        browserWSEndpoint: SBR_WS_ENDPOINT,
    });
    try {
        const page = await browser.newPage();
        console.log('Connected! Navigating to https://example.com...');
        await page.goto('https://example.com');
        console.log('Navigated! Scraping page content...');
        const html = await page.content();
        console.log(html)
    } finally {
        await browser.close();
    }
}

main().catch(err => {
    console.error(err.stack || err);
    process.exit(1);
});
                              
                            
                              const { Builder, Browser } = require('selenium-webdriver');

const SBR_WEBDRIVER = 'https://brd-customer-CUSTOMER_ID-zone-ZONE_NAME:[email protected]:9515';

async function main() {
    console.log('Connecting to Browser API...');
    const driver = await new Builder()
        .forBrowser(Browser.CHROME)
        .usingServer(SBR_WEBDRIVER)
        .build();
    try {
        console.log('Connected! Navigating to https://example.com...');
        await driver.get('https://example.com');
        console.log('Navigated! Scraping page content...');
        const html = await driver.getPageSource();
        console.log(html);
    } finally {
        driver.quit();
    }
}

main().catch(err => {
    console.error(err.stack || err);
    process.exit(1);
});
                              
                            
                              from selenium.webdriver import Remote, ChromeOptions
from selenium.webdriver.chromium.remote_connection import ChromiumRemoteConnection

SBR_WEBDRIVER = 'https://brd-customer-CUSTOMER_ID-zone-ZONE_NAME:[email protected]:9515'

def main():
    print('Connecting to Browser API...')
    sbr_connection = ChromiumRemoteConnection(SBR_WEBDRIVER, 'goog', 'chrome')
    with Remote(sbr_connection, options=ChromeOptions()) as driver:
        print('Connected! Navigating to https://example.com...')
        driver.get('https://example.com')
        print('Navigated! Scraping page content...')
        html = driver.page_source
        print(html)

if __name__ == '__main__':
    main()
                              
                            

启用自主解锁能力

浏览器指纹识别

浏览器指纹识别

模拟真实用户的浏览器,打造类人的使用体验

验证码破解

验证码求解

分析并求解验证码及挑战-响应测试

管理特定用户代理

管理特定 User Agent

自动模拟不同类型的浏览器与设备

设置引用头

设置引用来源 Headers

模拟来自热门或可信网站的访问流量

处理Cookie

处理 Cookies

避免由 Cookie 相关因素导致的潜在封锁

自动重试和IP轮换

自动重试与 IP 轮换

在后台持续重试请求,并轮换 IP

全球地域覆盖

全球地理覆盖

访问任意国家、城市、州/省或 ASN 的本地化内容

JavaScript渲染

JavaScript 渲染

从依赖动态元素的网站中提取数据

数据完整性验证

数据完整性校验

确保数据的准确性、一致性与可靠性

顶级远程浏览器

正确结果总耗时(平均)表示已完成单个任务的平均端到端时长。

Bright Data 的浏览器 API 排名第一

在 AIMultiple 的独立基准测试中,Bright Data 的浏览器 API 在 8 家领先的远程浏览器提供商中排名第一,在 160 个真实世界自动化任务中获得 97% 的综合评分、95% 的成功率,以及满分 100% 的速度评分。

开始免费试用

浏览器 API 定价

体验套餐
$8 / GB
按量支付
免费试用
按需付费,无需每月承诺。
71 GB 包含
$7 / GB
$499 月付计划
免费试用
专为寻求扩大运营的团队量身定制
166 GB 包含
$6 / GB
$999 月付计划
免费试用
为具有广泛运营需求的大型团队设计
399 GB 包含
$5 / GB
$1999 月付计划
免费试用
为关键操作提供高级支持和功能
企业级套餐
适合行业领导者:精英数据解决方案,满足一流企业需求
联系我们
  • 专属客户经理
  • 定制套餐
  • 高级服务水平协议
  • 优先支持
  • 个性化的使用流程引导
  • 单点登录 (SSO)
  • 定制化
  • 审核日志
我们接受这些支付方式:
浏览器 API 与网络解锁器对比

浏览器 API

完整浏览器自动化
工作方式
在真实托管云浏览器上运行您的脚本
浏览器自动化支持
支持 Puppeteer、Playwright 和 Selenium
页面交互
点击、滚动、悬停、填写表单、多步骤流程
JavaScript 渲染
通过真实浏览器进行完整 JS 渲染
验证码解决
自动执行(可通过 CDP 或控制面板配置)
会话持久性
通过 CDP 在会话间复用同一 IP
输出格式
原始 HTML、通过 CDP 截图
定价模式
按流量 GB 付费(无按请求收费)
文件下载
通过 CDP 下载 CSV、PDF、二进制文件
会话日志和调试
完整日志:时长、导航、验证码、错误

网络解锁器

单请求提取
工作方式
1 次 API 调用 → 返回干净 HTML 或 JSON
浏览器自动化支持
不支持浏览器自动化
页面交互
不支持——仅静态请求/响应
JavaScript 渲染
部分支持——仅通过手动 Expect Elements
验证码解决
自动执行(可通过控制面板禁用)
会话持久性
无状态——每个请求无持久会话
输出格式
HTML、JSON、Markdown、截图 (PNG)
定价模式
仅按成功请求付费(失败不计费)
文件下载
不支持
会话日志和调试
有限——仅截图输出用于调试

浏览器 API 自定义 CDP 功能

手动验证码控制

开启或关闭自动解决,并为 ReCaptcha、HCaptcha 和 CF Challenge 类型配置自定义算法。

设备模拟

模拟数百种真实移动和桌面设备,并使用准确的屏幕、用户代理和像素比例设置。

广告拦截器

在导航前从目标页面移除广告,以降低带宽成本并加快重型网站上的抓取速度。

会话持久性

在多个请求中复用同一个代理 peer,以在会话之间保持一致的 IP 和浏览器状态。

会话 ID 检索

提取任何活动会话的唯一 ID,以便按需查找日志、调试错误并审计带宽使用情况。

文件下载

在自动化流程中直接捕获 CSV、PDF 和其他二进制文件,无需离开浏览器会话。

更快文本输入

以高速向聚焦元素发送快速按键,适用于批量表单填写和大规模文本输入任务。

自定义 SSL/TLS 证书

安装用于域名认证的客户端证书,这些证书会按会话加载,并在会话结束时自动清除。

验证码自动解决

在您的会话中自动检测并解决 CAPTCHA,内置状态跟踪和表单提交。

浏览器 API 的优势

降低基础设施开销

通过单个 API 设置并自动扩展浏览器环境,为持续抓取提供无限并发会话和工作负载

提高成功率

停止构建解锁补丁,通过内置解锁器和超大规模住宅 IP 池,让任何公共网页数据访问更具未来适应性

提升开发者生产力

只需一行代码即可在混合云中运行现有脚本,让开发人员“专注于关键事项”,摆脱抓取操作的繁琐工作

代理基础架构

由屡获殊荣的代理网络提供支持

超40000万 monthly 个代理 IP、行业领先的技术,以及可按任意国家、城市、邮政编码、运营商和 ASN 定向的能力,使我们的高级 代理服务 成为开发者的首选。
代理徽章与奖项

为您最复杂的工作流赋能

代理交互

  • 启用代理式任务自动化
  • 填写表单、搜索等
  • 低延迟快速开始
  • 确保安全、隔离的会话

隐身浏览

  • 使用地理位置代理
  • 类人指纹识别
  • 自动解决 CAPTCHA
  • 管理 Cookie 和会话

AI 就绪数据管道

  • 发现相关数据源
  • 实时或批量收集
  • 结构化或非结构化输出
  • 通过 MCP 无缝集成

自动扩展浏览器基础设施

只需一行代码,即可将您的交互式多步骤抓取脚本连接到混合浏览器环境,并提供无限并发会话

兼容 Chrome DevTools

使用 Chrome DevTools 调试器无缝监控并排查您的浏览器 API 性能问题

24/7 支持

获得全天候专家支持,快速解决问题,并确保高质量数据交付。实时了解网络状态,实现完全透明

Bright Data 为全球顶级品牌提供支持

Bright Data 让自主 AI 代理能够在易于集成、一致且可靠的环境中浏览网站、查找信息并自动执行操作

准备好开始了吗?

常见问题

浏览器 API 是一种爬虫浏览器,其工作方式类似其他自动化浏览器,并由 Puppeteer 和 Playwright 等常用高级 API 控制,但它是唯一内置网站解锁能力的浏览器。浏览器 API 会在后台自动管理所有网站解锁操作,包括:验证码解决、浏览器指纹识别、自动重试、选择标头、Cookie 和 JavaScript 渲染等,从而帮助您节省时间和资源。

在数据抓取时,当需要对页面进行 JavaScript 渲染或与网站交互(悬停、翻页、点击、截图等)时,开发人员会使用自动化浏览器。此外,当大型数据抓取项目需要同时定位多个页面时,浏览器也很有用。

浏览器 API 是 GUI 浏览器(也称为“有头”浏览器),使用图形用户界面。不过,开发者会像使用无头浏览器一样体验浏览器 API,通过 Puppeteer 或 Playwright 等 API 与浏览器交互。浏览器 API 实际上是在 Bright Data 的基础设施上以 GUI 浏览器形式打开。

在选择自动化浏览器时,开发人员可以选择无头浏览器或 GUI/有头浏览器。“无头浏览器”指没有图形用户界面的网页浏览器。与代理结合使用时,无头浏览器可用于抓取数据,但很容易被机器人防护软件检测到,使大规模数据抓取变得困难。像浏览器 API 这样的 GUI 浏览器(也称“有头”)使用图形用户界面。机器人检测软件不太可能检测到 GUI 浏览器。

浏览器 API 内置网站解锁功能,可自动为您处理封锁。浏览器 API 采用自动化解锁,并在 Bright Data 的服务器上打开,因此非常适合扩展网页数据抓取项目,而无需大量基础设施。

是的,浏览器 API 完全兼容 Puppeteer。

是的,浏览器 API 完全兼容 Playwright。

浏览器 API 是一种针对数据抓取优化的自动化浏览器,集成了网络解锁器的自动化解锁能力。网络解锁器适用于一步式请求,而当开发者需要与网站交互以检索数据时,则需要浏览器 API。它也非常适合任何需要浏览器、扩展能力以及自动管理所有网站解锁操作的数据抓取项目。

确保抓取连续性,切换到爬虫浏览器