返回博客
身份

使用 --bot-inject-random-history 合成浏览历史

了解 BotBrowser 的 --bot-inject-random-history 标志如何在启动时生成真实感的浏览历史,构建完整的浏览器身份。

介绍

真实浏览器会随着使用积累浏览历史。全新的无历史浏览器与已有自然使用痕迹的浏览器不同。BotBrowser 的 --bot-inject-random-history(PRO 版)在启动时将合成的历史条目写入历史数据库,从而在任何自动化前就呈现出真实的使用轨迹。

隐私影响:为何浏览历史重要

history.length 可被页面上的 JavaScript 访问。新的标签页通常为 1,有历史的会更大。合成历史能让身份看起来更自然,并与其他信号(书签、cookies)一起构成完整的浏览器身份。

使用方法

CLI 示例

/opt/botbrowser/chrome --bot-profile="/path/to/profile.enc" \
  --bot-inject-random-history \
  --user-data-dir="$(mktemp -d)"

Puppeteer 集成

const puppeteer = require('puppeteer-core');

(async () => {
  const browser = await puppeteer.launch({
    executablePath: '/path/to/botbrowser/chrome',
    args: ['--bot-profile=/path/to/profile.enc', '--bot-inject-random-history'],
    headless: true,
    defaultViewport: null,
  });

  const page = await browser.newPage();
  await page.goto('https://example.com');
  const historyLength = await page.evaluate(() => history.length);
  console.log('History length:', historyLength);
  await browser.close();
})();

最佳实践

  • 每次会话使用独立的 --user-data-dir
  • --bot-bookmarks--bot-cookies 结合使用以形成完整身份。
  • 验证历史请查看 chrome://history,不要仅依赖 history.length

总结

--bot-inject-random-history 在启动时合成并写入历史,避免了真实导航带来的网络开销与副作用,同时生成自然的使用轨迹。

title: "使用 --bot-inject-random-history 生成合成浏览历史" description: "了解 BotBrowser 的 --bot-inject-random-history 标志如何创建真实的浏览历史,构建完整的浏览器身份。" date: "2025-12-02" locale: zh category: identity tags: ["history", "injection", "identity", "browsing", "privacy"] published: true

--bot-inject-random-history 标志

BotBrowser 的 --bot-inject-random-history 标志在浏览器启动时填充合成浏览历史。这是 PRO 层级功能。

chrome --bot-profile="/path/to/profile.enc" \
       --bot-inject-random-history

该标志生成真实的历史条目,包括热门网站、分布在合理时间范围内的不同时间戳,以及多样化的域名以模拟自然的浏览模式。

Puppeteer 示例

const puppeteer = require('puppeteer-core');

(async () => {
  const browser = await puppeteer.launch({
    executablePath: '/path/to/botbrowser/chrome',
    args: [
      '--bot-profile=/path/to/profile.enc',
      '--bot-inject-random-history',
    ],
    headless: true,
    defaultViewport: null,
  });

  const page = await browser.newPage();
  await page.goto('https://example.com');

  const historyLength = await page.evaluate(() => history.length);
  console.log('History length:', historyLength);
  await browser.close();
})();

结合书签

构建完整的浏览器身份,将历史注入与书签预填充结合:

chrome --bot-profile="/path/to/profile.enc" \
       --bot-inject-random-history \
       --bot-bookmarks="/path/to/bookmarks.json" \
       --bot-config-timezone=Europe/London \
       --bot-config-locale=en-GB

这创建了一个具有填充历史、匹配书签和一致地理信号的浏览器身份。

最佳实践

每个会话使用新的 user-data-dir。 每个会话应从自己的数据目录开始:

chrome --bot-profile="/path/to/profile.enc" \
       --bot-inject-random-history \
       --user-data-dir="$(mktemp -d)"

使历史与身份匹配。 与区域和时区标志一起使用历史注入时,注入的历史自然适合更广泛的身份。

结合 --bot-always-active。 --bot-always-active 标志(PRO 层级)保持窗口处于活跃状态,使会话更像主动浏览。

开始使用

  1. GitHub 下载 BotBrowser
  2. 使用 --bot-profile--bot-inject-random-history 启动
  3. 可选添加 --bot-bookmarks 构建完整身份
  4. 在会话中验证 history.length
#history#injection#identity#browsing#privacy