Chuyển đến nội dung
Danh tính · profile · lưu trữ lâu dài

Một danh tính trình duyệt cho mỗi tài khoản

Một tài khoản lần nào cũng đăng nhập từ một máy mới sẽ rất nổi bật, và hai tài khoản dùng chung một máy cũng vậy. Clearcote cho mỗi tài khoản một seed riêng, nên tài khoản đó quay lại như cùng một thiết bị ở mọi phiên, còn tài khoản tiếp theo trông như một máy khác.

Danh tính theo seed có ở mọi gói. Muốn chạy nhiều danh tính cùng lúc cần gói Pro hoặc bản build mở.

Mỗi tài khoản một seed và một thư mục profile

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,
});

Điểm nổi bật

Cùng seed, cùng thiết bị

Dùng lại một seed là persona quay lại y hệt: cùng GPU, màn hình, phân khúc phần cứng và font. Không có gì cần lưu trữ; seed chính là danh tính.

Seed mới, máy khác

Kết quả đọc lại canvas và WebGL khác nhau theo từng seed và từng site, nên hai tài khoản không dùng chung một rendering fingerprint.

Trạng thái được lưu giữ

Persistent context giữ cookie, localStorage, IndexedDB và cache giữa các lần chạy, giống như một profile trình duyệt thật.

Mỗi danh tính một proxy

Ghép mỗi danh tính với IP đầu ra riêng và geoip, để múi giờ và ngôn ngữ của nó lần nào cũng theo đúng IP đó.

Profile được lưu, dùng từ code

Profile lưu seed, proxy và các tùy chọn khởi chạy dưới dạng JSON trong ~/.clearcote/profiles, nên script có thể khởi chạy một tài khoản theo tên.

Ứng dụng desktop cho thao tác thủ công

Profile Manager tạo, gắn tag và khởi chạy profile dưới dạng cửa sổ trình duyệt bình thường, mỗi profile có proxy và storage riêng.

Điều gì tạo nên một danh tính

Hai thứ tạo nên một danh tính: những gì trình duyệt báo cáo và những gì nó ghi nhớ. Seed lo phần thứ nhất, một cách tất định. Thư mục user-data, hoặc profile hosted, lo phần thứ hai: cookie, dữ liệu lưu trữ của site và mọi thứ khác mà một khách truy cập quay lại mang theo.

Hãy biết rõ điều gì tách biệt các danh tính và điều gì không. Canvas và WebGL tách biệt các tài khoản. Audio đã render và client rect thì không, vì chúng đến từ máy bên dưới và giống nhau với mọi danh tính trên máy đó, đúng như với hai người dùng phần cứng giống hệt nhau. Nếu một site đối chiếu dựa trên những giá trị này, giải pháp là dùng các máy riêng biệt, chứ không phải một switch khác.

Profile thiết bị được import thay đổi các giá trị mà trang đọc được, chứ không thay đổi cách pixel được render, nên hai tài khoản dùng hai profile trên cùng một máy vẫn vẽ ra cùng một canvas. Để tách biệt phần render, hãy dùng seed riêng cho mỗi tài khoản và không dùng profile, và đừng kết hợp seed với profile.

Lưu danh tính ở đâu

Công cụLưu những gìPhù hợp nhất cho
Persistent context của SDKMỗi tài khoản một thư mục user-dataScript chạy trên máy của chính bạn
Profile của SDKSeed, proxy và tùy chọn khởi chạy dưới dạng JSONKhởi chạy tài khoản theo tên từ code
Profile ManagerMỗi profile một thư mục dữ liệu, cùng proxy, tag và ghi chúĐiều khiển danh tính thủ công trong cửa sổ
Profile hostedCookie, localStorage và IndexedDB, được mã hóaPhiên cloud khởi động ở trạng thái đã đăng nhập

Mọi người dùng nó để làm gì

Agency

Giữ thông tin đăng nhập của mỗi khách hàng trên một danh tính riêng, để phiên của khách hàng này không bao giờ lẫn với khách hàng khác.

Vận hành cửa hàng

Vận hành các cửa hàng hoặc khu vực riêng biệt mà phiên của chúng không lẫn vào nhau.

QA với nhiều người dùng test

Giữ hàng chục tài khoản test đã đăng nhập, mỗi tài khoản trên một thiết bị ổn định.

Nghiên cứu dài hạn

Truy cập lại cùng các trang bằng cùng một thiết bị trong nhiều tuần và đo lường những gì thay đổi.

Clearcote được xây dựng cho quyền riêng tư, kiểm thử, nghiên cứu và tự động hóa hợp pháp. Bạn chịu trách nhiệm về cách mình sử dụng nó và về việc tuân thủ điều khoản của các trang web bạn truy cập.

Gói nào có tính năng này

Danh tính theo seed và persistent context có ở mọi gói. Gói Miễn phí với GitHub chạy mỗi lần một trình duyệt, nên muốn chạy nhiều danh tính cùng lúc trên bản build mới nhất thì cần Pro.

So sánh các gói

Câu hỏi thường gặp

Làm sao để các tài khoản không bị liên kết với nhau?

Cho mỗi tài khoản một seed riêng, một thư mục profile lưu lâu dài riêng và một proxy riêng với geoip được bật. Đừng dùng chung cookie hay storage giữa các tài khoản, và đừng xoay vòng seed của một tài khoản.

Có nên đổi fingerprint mỗi phiên không?

Không. Một tài khoản đã đăng nhập mà lần truy cập nào cũng đến từ một thiết bị mới là tín hiệu dễ nhận ra hơn bất kỳ giá trị nào bạn định xoay vòng. Hãy giữ một seed trong suốt vòng đời của tài khoản.

Seed và profile thiết bị khác nhau thế nào?

Seed suy ra cả một persona tổng hợp cùng noise canvas và WebGL theo từng site. Profile thiết bị thay vào đúng những giá trị mà một Chrome thật đã báo cáo, nhưng phần render vẫn đến từ máy của bạn. Hãy dùng một trong hai: dùng seed cùng với profile sẽ bật lớp noise và khiến một số trường của profile chỉ được áp dụng một phần.

Có quản lý profile được mà không cần viết code không?

Được. Profile Manager là ứng dụng desktop dùng để tạo, sắp xếp và khởi chạy profile dưới dạng cửa sổ trình duyệt bình thường, mỗi profile có proxy và bộ lưu trữ lâu dài riêng.

Chạy nhiều tài khoản có được phép không?

Điều đó phụ thuộc vào điều khoản của từng website và pháp luật nơi bạn ở, chứ không phụ thuộc vào trình duyệt. Clearcote được xây dựng cho quyền riêng tư, kiểm thử, nghiên cứu và automation hợp pháp, và bạn chịu trách nhiệm về cách mình sử dụng nó.

Tìm hiểu sâu hơn trong tài liệu

Tính năng liên quan

Dùng thử Clearcote

Thay thế drop-in cho Playwright & Puppeteer, nhất quán đến tận TLS handshake, với một bản build mã nguồn mở để bắt đầu.

Miễn phí cho một trình duyệt với GitHub. Không cần thẻ.