SuperAPI AI 工具集

python-sdk-best-practices

编程与开发

查看项目

更新于 10-15 20:08

技能介绍

用途:本技能是编写 Bright Data Python SDK(brightdata-sdk 包)代码的规范指南,适用于编写、修改、调试或审查使用该 SDK 的 Python 代码时参考。

安装:pip install brightdata-sdk

核心规则:客户端必须使用上下文管理器,异步用 async with BrightDataClient(),同步用 with SyncBrightDataClient(),否则会抛出 RuntimeError: BrightDataClient not initialized。默认使用异步客户端 BrightDataClient,仅在无法使用异步时用 SyncBrightDataClient;禁止在 async 函数内使用同步客户端。令牌从环境变量 BRIGHTDATA_API_TOKEN 自动加载,或通过 token= 参数传入,不要硬编码。异步客户端所有抓取方法都需 await。

主要能力:支持 Web Unlocker 抓取任意 URL(可传 country、response_format、method、timeout,支持 async 模式与批量 URL);平台专用抓取器(Amazon、LinkedIn、Instagram、Facebook、YouTube、ChatGPT、TikTok、Reddit 等,模式为 client.scrape.<平台>.<方法>);关键词搜索发现;SERP(Google、Bing、Yandex);Datasets API(175+ 预采集数据集,支持 filter、sample、download、get_metadata,可用 brightdata.datasets.export 导出 JSON/CSV/JSONL);Scraper Studio 自定义抓取器(run 或 trigger/status/wait_and_fetch);Browser API 通过 CDP 连接云浏览器(配合 Playwright);手动 trigger/poll/fetch;asyncio.gather 并发批量操作。

结果对象:ScrapeResult 含 success、data、cost、status、url、snapshot_id、platform、row_count;SearchResult 含 query、data、search_engine、total_found;基类提供 to_dict、to_json、save_to_file、elapsed_ms。

错误处理:可捕获 BrightDataError、ValidationError、AuthenticationError、APIError(含 status_code、response_text)、ZoneError、NetworkError、SSLError。

配置与限制:客户端支持 timeout、web_unlocker_zone、serp_zone、auto_create_zones、validate_token、rate_limit、rate_period 等参数;默认首次使用时自动创建 sdk_unlocker 与 sdk_serp 区域。需注意上下文管理器、异步/同步混用、令牌硬编码等常见错误。具体收费、价格与平台覆盖范围资料未提供。