跳到正文
身份 · 配置文件 · 持久化

浏览器身份,一个账号一个

一个账号每次都从新机器登录会很显眼,两个账号共用一台机器同样显眼。Clearcote 为每个账号分配各自的种子,所以它每次会话都以同一台设备的面貌回来,而下一个账号看起来则是另一台机器。

带种子的身份在所有套餐中都可用。同时运行多个身份需要 Pro 或开源版构建。

每个账号一个种子、一个配置文件目录

import { launchPersistentContext } from "clearcote";

// one seed and one user-data directory per account
const ctx = await launchPersistentContext("./profiles/account-42", {
  fingerprint: "account-42",
  proxy: { server: "http://gateway:8080", username: "u", password: "p" },
  geoip: true,
});

亮点

同一个种子,同一台设备

复用同一个种子,身份画像就会原样回来:同样的 GPU、屏幕、硬件档位和字体。无需存储任何东西,种子本身就是身份。

换个种子,换台机器

Canvas 和 WebGL 的回读结果因种子和站点而异,所以两个账号不会共用一个渲染指纹。

持久保留的状态

持久化上下文会在多次运行之间保留 cookie、localStorage、IndexedDB 和缓存,就像真实的浏览器配置文件一样。

每个身份一个代理

为每个身份搭配各自的出口和 geoip,让它的时区和语言每次都跟随该 IP。

在代码中保存配置文件

Profile 把种子、代理和启动选项以 JSON 形式保存在 ~/.clearcote/profiles 下,脚本可以按名称启动某个账号。

适合手动操作的桌面应用

Profile Manager 能以普通浏览器窗口的形式创建配置文件、打标签并启动它们,每个都有各自的代理和存储。

身份由什么构成

身份由两部分构成:浏览器上报什么,以及它记住了什么。种子以确定性的方式负责前者;用户数据目录或托管配置文件负责后者:cookie、站点存储,以及一位回访者身上带着的其他一切。

要清楚哪些东西能区分身份、哪些不能。Canvas 和 WebGL 能区分账号;渲染出的音频和 client rects 则不能,因为它们来自底层机器,同一台机器上的所有身份都一样——正如两个人使用完全相同的硬件时那样。如果某个网站依据这些做关联,解决办法是换成不同的机器,而不是换一个开关。

导入的设备配置改变的是页面读取到的值,而不是像素的渲染方式,所以同一台机器上使用两份配置的两个账号,画出的 canvas 仍然相同。如果需要渲染隔离,请为每个账号使用单独的种子、不加载配置,也不要把种子和配置混用。

身份存放在哪里

工具存储内容最适合
SDK 持久化上下文每个账号一个用户数据目录在你自己机器上运行的脚本
SDK Profile以 JSON 保存的种子、代理和启动选项在代码中按名称启动账号
Profile Manager每个配置文件一个数据目录,外加代理、标签和备注在窗口中手动操控身份
托管配置文件cookie、localStorage 和 IndexedDB,加密存储启动即已登录的云端会话

典型用途

营销机构

每个客户的登录都放在各自的身份上,一个客户的会话绝不会和另一个客户的混在一起。

店铺运营

分别运营不同的店铺或地区,彼此的会话互不串扰。

多测试用户的 QA

维护几十个已登录的测试账号,每个都在一台稳定的设备上。

纵向研究

在数周时间里以同一台设备反复访问同样的页面,衡量其中的变化。

Clearcote 专为隐私保护、测试、研究和合法自动化而打造。你须对自己的使用方式负责,并遵守所访问网站的条款。

哪些套餐包含此功能

带种子的身份和持久化上下文在所有套餐中都可用。GitHub 免费版同一时间只能运行一个浏览器,所以要在最新构建上同时运行多个身份,需要 Pro。

对比套餐

常见问题

如何避免账号之间被关联起来?

给每个账号分配各自的种子、各自的持久化配置文件目录,以及各自开启了 geoip 的代理。不要在账号之间共享 cookie 或存储,也不要轮换某个账号的种子。

每个会话都应该更换指纹吗?

不应该。一个已登录的账号每次访问都出现在一台新设备上,这比你轮换的任何值都更显眼。在账号的整个生命周期内,请保持同一个种子。

种子和设备配置有什么区别?

种子会派生出一整套合成的身份画像,以及按站点的 canvas 和 WebGL 噪声。设备配置则直接替换成真实 Chrome 上报的精确值,但渲染仍然来自你的机器。两者选其一即可:种子和配置同时使用,会开启噪声层,并导致配置中的某些字段只能部分生效。

不写代码也能管理配置文件吗?

可以。Profile Manager 是一款桌面应用,能以普通浏览器窗口的形式创建、整理和启动配置文件,每个配置文件都有各自的代理和持久化存储。

运行多个账号是被允许的吗?

这取决于各个网站的条款以及你所在地的法律,而不取决于浏览器。Clearcote 为隐私保护、测试、研究和合法的自动化而构建,如何使用由你自行负责。

在文档中深入了解

相关功能

试用 Clearcote

可直接接入 Playwright 与 Puppeteer,一直到 TLS 握手都保持一致,并提供开源构建作为起点。

通过 GitHub 可免费使用一个浏览器。无需信用卡。