我为500个数据经纪商网站实现了自动退出(开源)
摘要
一款开源macOS工具,可自动从500多个数据经纪商网站退出,具备验证码解决和每月自动安排功能。
查看缓存全文
缓存时间: 2026/05/18 12:55
stephenlthorn/auto-identity-remove
来源:https://github.com/stephenlthorn/auto-identity-remove
auto-identity-remove
适用于 macOS 的自动数据经纪人退出运行器。每月按计划从 500 多个人员搜索网站和数据经纪人数据库 中删除您的个人信息——支持验证码破解、持久状态追踪(以避免每次运行时重复提交已完成的操作),完成时还会通过 iMessage 发送通知。
功能
每月,脚本会:
- 搜索每个数据经纪人网站上的您的姓名 + 州
- 找到您的具体信息条目(针对需要个人资料 URL 的网站)
- 自动填写并提交退出表单
- 通过 CapSolver (https://capsolver.com) 破解验证码(AI 驱动,约 $0.001/次)
- 跳过近期已将其移除的经纪人(90 天重新检查窗口)
- 向您发送 iMessage,包含结果摘要
- 在浏览器中打开那些需要手动操作的网站
系统要求
- macOS(使用 launchd 进行任务调度,使用 Messages 发送 iMessage)
- Node.js 18+
- 已安装 Playwright (https://playwright.dev) 浏览器
npx playwright install chromium
快速开始
# 1. 克隆仓库
git clone https://github.com/stephenlthorn/auto-identity-remove.git
cd auto-identity-remove
# 2. 安装依赖
npm install
# 3. 运行交互式设置(创建 config.json 并注册月度任务)
node setup.js
# 4. 随时手动运行
./run.sh
设置向导
运行 node setup.js 会引导您完成:
| 步骤 | 说明 |
|---|---|
| 个人信息 | 姓名、城市、州、邮编、邮箱、电话 |
| 别名 | 曾用名或变体(例如 “Steve Doe”) |
| CapSolver 密钥 | 用于有验证码保护的退出表单 |
| 一次性账户 | 在需要登录的网站上创建账户(存储在 config.json 中,已加入 gitignore) |
| iMessage | 接收结果摘要的电话号码 |
| launchd 计划 | 注册一个每月 1 号上午 9 点执行的月度任务 |
您的个人信息永远不会离开您的电脑。 config.json 和 state.json 均已加入 gitignore。
CapSolver(可选但推荐)
某些退出表单带有 reCAPTCHA。没有 CapSolver,这些网站将加入手动处理列表,而不是自动处理。
- 在 capsolver.com (https://capsolver.com) 注册——免费,按用量付费
- 充值 $1–2 的积分(每次约 $0.001,足够使用数月)
- 在
setup.js询问时粘贴您的 API 密钥,或将其添加到config.json:
"capsolver": {
"apiKey": "CAP-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
文件
auto-identity-remove/
├── setup.js ← 运行一次:交互式设置 + 计划任务
├── watcher.js ← 主运行器
├── brokers.js ← 经纪人列表及退出策略
├── run.sh ← 手动触发
├── config.example.json ← 模板(复制 → config.json)
├── package.json
├── .gitignore
│
├── config.json ← 您的个人信息(已加入 gitignore,由 setup.js 创建)
├── state.json ← 退出记录 / 跳过逻辑(已加入 gitignore)
└── logs/ ← 每次运行的 JSON 日志(已加入 gitignore)
状态追踪
state.json 记录每个经纪人最近一次成功退出的时间。默认重新检查窗口为 90 天——经纪人通常会在该窗口内重新添加您的数据,因此脚本会在到期时重新提交。
{
"optOuts": {
"Spokeo": {
"lastSuccess": "2026-05-01T09:00:00.000Z",
"totalRuns": 3,
"detail": ""
}
}
}
每次运行时您会看到:
✅ 已移除— 本次运行已提交退出⏭ 跳过(近期已处理)— 最近已移除,还未到重新检查时间🔍 未找到— 该网站上未找到您的姓名📋 需要手动操作— 已在浏览器中打开供您处理❌ 错误— 网络/超时问题,下次运行时会重试
覆盖的经纪人
自动移除(30+ 个)
| 网站 | 方法 |
|---|---|
| Spokeo | 搜索 → 找到信息条目 → 退出表单 |
| WhitePages | 搜索 → 找到信息条目 → 禁止显示表单 |
| FastPeopleSearch | 搜索 → 退出表单 |
| TruePeopleSearch | 直接退出表单 |
| BeenVerified | 退出搜索表单 |
| Radaris | 搜索 → 隐私表单 |
| Intelius | 直接退出表单 |
| PeopleFinders | 直接退出表单 |
| PeopleSmart | 直接退出表单 |
| MyLife | 搜索 → 退出 |
| Nuwber | 搜索 → 移除表单 |
| FamilyTreeNow | 直接退出表单 |
| CheckPeople | 直接退出表单 |
| ThatsThem | 直接退出表单 |
| USPhonebook | 直接退出表单 |
| PublicDataUSA | 直接退出表单 |
| SmartBackgroundChecks | 直接退出表单 |
| SearchPeopleFree | 直接退出表单 |
| PeopleSearchNow | 直接退出表单 |
| InfoTracer | 直接退出表单 |
| SocialCatfish | 直接退出表单 |
| NationalPublicData | 直接退出表单 |
| ClustrMaps | 直接退出表单 |
| PrivateRecords | 直接退出表单 |
| Acxiom | 直接表单(影响下游数十个经纪人) |
| LexisNexis | 直接表单(法律/金融数据) |
| ZoomInfo | 直接表单(B2B 专业数据) |
| Clearbit | 直接表单(B2B 丰富数据) |
| Pipl | 通过 Mail.app 邮箱退出 |
通用——500+ 额外经纪人(自动检测)
generic-runner.js 处理来自两个公共数据集的约 470 个额外经纪人:
| 数据集 | 来源 | 数量 |
|---|---|---|
| The Markup 的数据经纪人列表 (https://themarkup.org/privacy/2023/01/26/which-data-brokers-offer-opt-outs) | 新闻调查,494 个退出 URL | ~494 |
| BADBOOL (https://github.com/yaelwrites/Big-Ass-Data-Broker-Opt-Out-List) | 社区维护的人员搜索列表 | ~27 额外 |
对于每个网站,它会依次尝试四种策略:
- 点击 “不要出售我的个人信息” 按钮
- 通过 OneTrust / TrustArc / Osano 隐私管理器退出
- 填写任何通用退出表单(邮箱、姓名、州)并提交
- 查找并记录 DSAR / 数据请求链接,供手动跟进
需要手动操作的网站会自动在浏览器中打开。
手动(在浏览器中为您打开)
| 网站 | 手动原因 |
|---|---|
| Google — 关于您的结果 | 需要 Google 账户交互 |
| Google — 过时内容 | 需要按情况提交 URL |
添加更多经纪人
编辑 brokers.js 并添加一条记录:
{
name: 'NewBrokerSite',
method: 'direct-form', // 或 'search-form', 'email', 'manual'
optOutUrl: 'https://example.com/opt-out',
formFields: {
'input[name*="first" i]': F, // F, L, N, E, ST, Z 来自配置
'input[name*="last" i]': L,
'input[type="email"]': E,
},
submitSelector: 'button[type="submit"]',
captchaLikely: false,
priority: 2,
}
欢迎提交 PR——尤其是针对已验证选择器有效的经纪人。
手动运行
./run.sh
或者在后台运行并将输出记录到日志:
./run.sh >> logs/manual-run.log 2>&1 &
卸载 / 禁用计划任务
launchctl unload ~/Library/LaunchAgents/com.auto-identity-remove.plist
rm ~/Library/LaunchAgents/com.auto-identity-remove.plist
为什么不直接使用付费服务?
付费服务如 Incogni (https://incogni.com)(96/年)或 Optery (https://optery.com)(39/年)非常出色,覆盖更多经纪人,并提供维护良好的退出流程。此工具适用于希望完全控制、透明度高且无需定期订阅的人——或者希望处理这些服务遗漏的部分(Acxiom、LexisNexis、ZoomInfo、Clearbit)。
同时使用两者是最佳方案:付费服务处理大多数经纪人,此脚本填补漏洞。
许可证
MIT
相似文章
报告发现:数据经纪商和AI公司的退出表单设计注定失败
电子隐私信息中心(EPIC)的一份报告揭示,包括谷歌、Meta和OpenAI在内的主要数据经纪商和AI公司在退出表单中使用欺骗性设计模式,阻止消费者有效选择退出数据销售和共享。
@gdb: 使用Codex从不需要的营销邮件中取消订阅
Todd Saunders演示了如何使用Codex的'/goal'命令自动查找并点击500封归档邮件中的取消订阅链接,成功取消订阅了87封邮件,并处理了确认页面。
@mamagnus00: 长期运行的浏览器代理来了。看看 /goal 如何为我父亲节省了12小时在eBay和Facebook群组中搜索……
演示了一个长期运行的浏览器代理,它自动在eBay和Facebook群组中搜索寻找家政人员,通过一个提示在Telegram上控制。使用Codex和Agency设置只需不到2分钟。
@injaneity:我逆向了 @OpenAI 的 Codex Computer Use,做了 pi-computer-use:一款模型无关的 macOS 电脑自动化工具,送给所有 π 爱好者
一位开发者逆向 OpenAI 的 Codex Computer Use,开源打造 pi-computer-use:支持任意模型的 macOS 自动化工具,优先走 AX 导航,并为兼容模型提供视觉回退。
@svpino:如何自动化网页任务(即使网站没有提供 API)。配合 Claude Code、Cursor、OpenCode、OpenC… 使用
利用 Claude Code、Cursor、OpenCode、OpenClaw 等 AI 编程助手,在没有 API 的网站上实现任务自动化的技巧。