jumpy-lion 0.1.6-beta.0 → 0.1.6-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -0
- package/dist/browser-controller.d.ts.map +1 -1
- package/dist/browser-controller.js +62 -2
- package/dist/browser-controller.js.map +1 -1
- package/dist/browser-plugin.d.ts +49 -0
- package/dist/browser-plugin.d.ts.map +1 -1
- package/dist/browser-plugin.js +128 -1
- package/dist/browser-plugin.js.map +1 -1
- package/dist/browser-process/anti-detect-browser.d.ts +56 -0
- package/dist/browser-process/anti-detect-browser.d.ts.map +1 -0
- package/dist/browser-process/anti-detect-browser.js +142 -0
- package/dist/browser-process/anti-detect-browser.js.map +1 -0
- package/dist/browser-process/anti-detect-config.d.ts +102 -0
- package/dist/browser-process/anti-detect-config.d.ts.map +1 -0
- package/dist/browser-process/anti-detect-config.js +328 -0
- package/dist/browser-process/anti-detect-config.js.map +1 -0
- package/dist/browser-process/browser.d.ts +41 -0
- package/dist/browser-process/browser.d.ts.map +1 -1
- package/dist/browser-process/browser.js +245 -47
- package/dist/browser-process/browser.js.map +1 -1
- package/dist/browser-process/get-chrome-executable.d.ts +13 -0
- package/dist/browser-process/get-chrome-executable.d.ts.map +1 -1
- package/dist/browser-process/get-chrome-executable.js +65 -0
- package/dist/browser-process/get-chrome-executable.js.map +1 -1
- package/dist/browser-process/index.d.ts +4 -1
- package/dist/browser-process/index.d.ts.map +1 -1
- package/dist/browser-process/index.js +3 -1
- package/dist/browser-process/index.js.map +1 -1
- package/dist/crawler.d.ts +28 -0
- package/dist/crawler.d.ts.map +1 -1
- package/dist/crawler.js +5 -2
- package/dist/crawler.js.map +1 -1
- package/dist/fingerprinting/fingerprint-injector.d.ts +54 -0
- package/dist/fingerprinting/fingerprint-injector.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-injector.js +207 -58
- package/dist/fingerprinting/fingerprint-injector.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js +16 -0
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js +3 -2
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js +18 -10
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/index.d.ts +1 -2
- package/dist/fingerprinting/fingerprint-overrides/index.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/index.js +1 -2
- package/dist/fingerprinting/fingerprint-overrides/index.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts +10 -2
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js +11 -2
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.d.ts +20 -2
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js +47 -250
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.d.ts +12 -1
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js +27 -22
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js +86 -28
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts +9 -2
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js +10 -2
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.js +165 -33
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js +10 -8
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js +9 -7
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/ua-ch.js +6 -6
- package/dist/fingerprinting/fingerprint-overrides/utils.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/utils.js +44 -1
- package/dist/fingerprinting/fingerprint-overrides/utils.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js +43 -1
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js +9 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js +14 -3
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js.map +1 -1
- package/dist/fingerprinting/locale-resolver.d.ts +41 -0
- package/dist/fingerprinting/locale-resolver.d.ts.map +1 -0
- package/dist/fingerprinting/locale-resolver.js +155 -0
- package/dist/fingerprinting/locale-resolver.js.map +1 -0
- package/dist/fingerprinting/non-apify-fingerprint-generator.d.ts +44 -0
- package/dist/fingerprinting/non-apify-fingerprint-generator.d.ts.map +1 -0
- package/dist/fingerprinting/non-apify-fingerprint-generator.js +518 -0
- package/dist/fingerprinting/non-apify-fingerprint-generator.js.map +1 -0
- package/dist/fingerprinting/non-apify-profiles.json +51267 -0
- package/dist/keyboard-layout.d.ts +45 -0
- package/dist/keyboard-layout.d.ts.map +1 -0
- package/dist/keyboard-layout.js +162 -0
- package/dist/keyboard-layout.js.map +1 -0
- package/dist/page.d.ts +18 -0
- package/dist/page.d.ts.map +1 -1
- package/dist/page.js +96 -6
- package/dist/page.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +12 -5
- package/scripts/postinstall.cjs +58 -0
- package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.d.ts +0 -10
- package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.d.ts.map +0 -1
- package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.js +0 -210
- package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.js.map +0 -1
package/README.md
CHANGED
|
@@ -39,6 +39,19 @@ The `Crawler` class is a custom implementation of the `BrowserCrawler` from Craw
|
|
|
39
39
|
|
|
40
40
|
The `jumpy-lion` is official cdp crawler package. See it [here](https://www.npmjs.com/package/jumpy-lion).
|
|
41
41
|
|
|
42
|
+
### Installation
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm install jumpy-lion
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
A postinstall hook pulls the matching anti-detect Chromium build from a public
|
|
49
|
+
Apify key-value store — no GitHub token, no Apify token. Works the same on
|
|
50
|
+
your workstation, CI, and the Apify platform. If the download fails for any
|
|
51
|
+
reason (offline, proxy, etc.) the install still succeeds; the crawler falls
|
|
52
|
+
back to the system Chrome on `PATH`. See `browser/BUILD.md` for env-var
|
|
53
|
+
overrides and the maintainer release flow.
|
|
54
|
+
|
|
42
55
|
---
|
|
43
56
|
---
|
|
44
57
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-controller.d.ts","sourceRoot":"","sources":["../src/browser-controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAc,MAAM,SAAS,CAAC;AAGxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"browser-controller.d.ts","sourceRoot":"","sources":["../src/browser-controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAc,MAAM,SAAS,CAAC;AAGxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAIhE,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,iBAAiB,CAC/D,WAAW,EAAE,6CAA6C;AAC1D,oBAAoB,EAAE,gBAAgB;AACtC,YAAY,EAAE,4BAA4B;AAC1C,EAAE,EAAE,0DAA0D;AAC9D,aAAa,CAChB;IACG,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,SAAS,CAAS;IAEpB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BjC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAiBjC;;;OAGG;YACW,iBAAiB;IAqC/B;;;OAGG;cACa,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCvC;;;OAGG;cACa,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC;;;OAGG;cACa,QAAQ,CAAC,UAAU,SAAI,GAAG,OAAO,CAAC,aAAa,CAAC;YAqDlD,yBAAyB;IAgOvC;;;OAGG;cACa,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlF;;;OAGG;cACa,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ1D,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI5G"}
|
|
@@ -3,6 +3,7 @@ import { BrowserController, log, utils } from 'crawlee';
|
|
|
3
3
|
import { FingerprintGenerator } from 'fingerprint-generator';
|
|
4
4
|
import { PAGE_CLOSED } from './events.js';
|
|
5
5
|
import { CdpFingerprintInjector } from './fingerprinting/fingerprint-injector.js';
|
|
6
|
+
import { generateNonApifyFingerprint } from './fingerprinting/non-apify-fingerprint-generator.js';
|
|
6
7
|
import CdpPage from './page.js';
|
|
7
8
|
export default class CDPBrowserController extends BrowserController {
|
|
8
9
|
constructor() {
|
|
@@ -222,6 +223,42 @@ export default class CDPBrowserController extends BrowserController {
|
|
|
222
223
|
const { fingerprint: launchFingerprint } = this.launchContext;
|
|
223
224
|
let fingerprint = launchFingerprint;
|
|
224
225
|
let fp = fingerprint.fingerprint;
|
|
226
|
+
// ── Non-Apify real-device fingerprint override ───────────────────────
|
|
227
|
+
// When useNonApifyFingerprints is set, replace the Crawlee-provided
|
|
228
|
+
// synthetic fingerprint with a real Chrome device profile. All fields
|
|
229
|
+
// (navigator, screen, GPU, UA-CH) come from the same physical device,
|
|
230
|
+
// guaranteeing cross-property consistency that synthetic generators miss.
|
|
231
|
+
const _fpOpts = this.launchContext.launchOptions?.fingerprintOptions;
|
|
232
|
+
if (_fpOpts?.useNonApifyFingerprints) {
|
|
233
|
+
// User-supplied fingerprintOptions.platform wins; falls back to
|
|
234
|
+
// whatever the existing fingerprint already says.
|
|
235
|
+
const userPlatform = _fpOpts?.platform;
|
|
236
|
+
const osHint = (() => {
|
|
237
|
+
const p = (fp?.navigator?.platform || '').toLowerCase();
|
|
238
|
+
if (p.includes('mac'))
|
|
239
|
+
return 'macos';
|
|
240
|
+
if (p.includes('linux'))
|
|
241
|
+
return 'linux';
|
|
242
|
+
return 'windows';
|
|
243
|
+
})();
|
|
244
|
+
const proxySeedKey = this.launchContext.proxyUrl
|
|
245
|
+
? (this.launchContext.proxyUrl.match(/session-([^,&]+)/i)?.[1] ?? null)
|
|
246
|
+
: null;
|
|
247
|
+
fingerprint = await generateNonApifyFingerprint({
|
|
248
|
+
platform: userPlatform,
|
|
249
|
+
os: osHint,
|
|
250
|
+
proxySeedKey,
|
|
251
|
+
});
|
|
252
|
+
fp = fingerprint.fingerprint;
|
|
253
|
+
this.launchContext.fingerprint = fingerprint;
|
|
254
|
+
log.info('Using non-Apify real Chrome device fingerprint', {
|
|
255
|
+
requestedPlatform: userPlatform ?? '(none — derived from existing fingerprint)',
|
|
256
|
+
os: osHint,
|
|
257
|
+
platform: fp?.navigator?.platform,
|
|
258
|
+
userAgent: `${(fp?.navigator?.userAgent || '').substring(0, 70)}...`,
|
|
259
|
+
webglRenderer: (fp?.videoCard?.renderer || '').substring(0, 70),
|
|
260
|
+
});
|
|
261
|
+
}
|
|
225
262
|
if (fingerprintGeneratorOptions?.operatingSystems?.length > 0) {
|
|
226
263
|
const requestedOS = fingerprintGeneratorOptions.operatingSystems[0]?.toLowerCase();
|
|
227
264
|
const currentPlatform = fp?.navigator?.platform?.toLowerCase() || '';
|
|
@@ -311,21 +348,44 @@ export default class CDPBrowserController extends BrowserController {
|
|
|
311
348
|
scroll: true,
|
|
312
349
|
},
|
|
313
350
|
};
|
|
314
|
-
// Determine effective useFingerprintDefaults value
|
|
315
|
-
|
|
351
|
+
// Determine effective useFingerprintDefaults value.
|
|
352
|
+
// Real device profiles (useNonApifyFingerprints=true) contain consistent cross-property
|
|
353
|
+
// data measured from a real device — default to using it (useFingerprintDefaults=false).
|
|
354
|
+
// Synthetic Apify-generated fingerprints need the hardcoded defaults to avoid
|
|
355
|
+
// injecting inconsistent generated values, so they keep useFingerprintDefaults=true.
|
|
356
|
+
const usingRealDeviceProfile = !!_fpOpts?.useNonApifyFingerprints;
|
|
357
|
+
const effectiveUseFingerprintDefaults = fingerprintOptions.useFingerprintDefaults
|
|
358
|
+
?? (usingRealDeviceProfile ? false : (defaultOptions.useFingerprintDefaults ?? true));
|
|
316
359
|
// Platform selection logic:
|
|
317
360
|
// - When useFingerprintDefaults is false: prefer generated fingerprint platform
|
|
318
361
|
// - When useFingerprintDefaults is true (default): prefer hardcoded fingerprintOptions.platform
|
|
319
362
|
const effectivePlatform = effectiveUseFingerprintDefaults === false
|
|
320
363
|
? (platform || fingerprintOptions.platform || 'Win32') // Generated fingerprint first
|
|
321
364
|
: (fingerprintOptions.platform || platform || 'Win32'); // Hardcoded option first
|
|
365
|
+
// Check useNativeStealth from all possible locations (in priority order):
|
|
366
|
+
// 1. Top-level launchOptions (e.g. CDPBrowserPlugin constructor arg)
|
|
367
|
+
// 2. Inside fingerprintOptions (e.g. datadome test / crawler launchOptions)
|
|
368
|
+
// 3. At launchContext root (some CDPCrawler launchContext configurations)
|
|
369
|
+
const useNativeStealth = !!this.launchContext.launchOptions?.useNativeStealth ||
|
|
370
|
+
!!this.launchContext.launchOptions?.fingerprintOptions?.useNativeStealth ||
|
|
371
|
+
!!this.launchContext?.useNativeStealth;
|
|
372
|
+
// Resolved locale triple is populated in browser-plugin before launch. Pass the
|
|
373
|
+
// whole thing through so the injector sets navigator.language, Accept-Language,
|
|
374
|
+
// Intl defaults, and timezone from one coherent source of truth.
|
|
375
|
+
const resolvedLocale = this.launchContext.launchOptions?.resolvedLocale;
|
|
322
376
|
// Merge humanization options properly
|
|
323
377
|
const mergedOptions = {
|
|
324
378
|
...defaultOptions,
|
|
325
379
|
...fingerprintOptions,
|
|
380
|
+
useNativeStealth,
|
|
381
|
+
// Explicitly set the computed effective value — the spread above would resolve to
|
|
382
|
+
// defaultOptions.useFingerprintDefaults (always true) when fingerprintOptions
|
|
383
|
+
// does not include the key, so we must override it here.
|
|
384
|
+
useFingerprintDefaults: effectiveUseFingerprintDefaults,
|
|
326
385
|
proxyUrl: this.launchContext.proxyUrl,
|
|
327
386
|
platform: effectivePlatform,
|
|
328
387
|
viewport: this.launchContext.launchOptions?.viewport,
|
|
388
|
+
resolvedLocale,
|
|
329
389
|
// Ensure humanization options are properly merged
|
|
330
390
|
humanization: {
|
|
331
391
|
...defaultOptions.humanization,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-controller.js","sourceRoot":"","sources":["../src/browser-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser-controller.js","sourceRoot":"","sources":["../src/browser-controller.ts"],"names":[],"mappings":"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"}
|
package/dist/browser-plugin.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { BrowserPlugin, type LaunchContext } from 'crawlee';
|
|
2
2
|
import type { NewPageResult } from './browser-controller.js';
|
|
3
3
|
import CDPBrowserController from './browser-controller.js';
|
|
4
|
+
import { type FingerprintConfigJson } from './browser-process/anti-detect-config.js';
|
|
5
|
+
import { type ResolvedLocale } from './fingerprinting/locale-resolver.js';
|
|
4
6
|
import type { LaunchReturn } from './launcher-wrap.js';
|
|
5
7
|
import { CdpLauncher } from './launcher-wrap.js';
|
|
6
8
|
type Library = CdpLauncher;
|
|
@@ -27,6 +29,13 @@ export interface LaunchBrowserOptions {
|
|
|
27
29
|
headless?: boolean;
|
|
28
30
|
executablePath?: string;
|
|
29
31
|
useExperimentalFingerprints?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Use the C++ anti-detect browser patches instead of the JS fingerprint
|
|
34
|
+
* override pipeline. Requires the custom Cromite-based binary (set via
|
|
35
|
+
* executablePath or ANTI_DETECT_CHROME_PATH). When true, the entire JS
|
|
36
|
+
* injection bundle is skipped — C++ patches handle all fingerprinting.
|
|
37
|
+
*/
|
|
38
|
+
useNativeStealth?: boolean;
|
|
30
39
|
/** Whether to start the browser maximized and fullscreen. Default: true */
|
|
31
40
|
maximizeWindow?: boolean;
|
|
32
41
|
/** Window width in pixels. Default: 1920 */
|
|
@@ -62,6 +71,17 @@ export interface LaunchBrowserOptions {
|
|
|
62
71
|
spoofPerformance?: boolean;
|
|
63
72
|
spoofLocale?: boolean;
|
|
64
73
|
detectTimezone?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* BCP-47 locale tag (e.g. 'ko-KR', 'de-DE'). One flag that coherently drives
|
|
76
|
+
* navigator.language(s), Accept-Language header, Intl defaults, currency
|
|
77
|
+
* symbol, date/number formatting, and timezone (derived from region).
|
|
78
|
+
* When unset, falls back to proxy-country lookup → fingerprint language → 'en-US'.
|
|
79
|
+
*/
|
|
80
|
+
locale?: string;
|
|
81
|
+
/** Explicit IANA timezone (e.g. 'Asia/Seoul'). Overrides locale-derived timezone. */
|
|
82
|
+
timezone?: string;
|
|
83
|
+
/** Explicit Accept-Language header (e.g. 'ko-KR,ko;q=0.9'). Overrides locale-derived list. */
|
|
84
|
+
languages?: string;
|
|
65
85
|
bypassCDPDetection?: boolean;
|
|
66
86
|
spoofStorage?: boolean;
|
|
67
87
|
spoofTiming?: boolean;
|
|
@@ -71,9 +91,38 @@ export interface LaunchBrowserOptions {
|
|
|
71
91
|
humanization?: HumanizationOptions;
|
|
72
92
|
/** Enable debug logging in browser console. Default: true for debugging */
|
|
73
93
|
debug?: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Use real Chrome device profiles (Camoufox-inspired) instead of the
|
|
96
|
+
* Apify fingerprint-generator statistical model. Profiles are sampled from
|
|
97
|
+
* a bundled database of real devices where every property — navigator,
|
|
98
|
+
* screen, GPU, UA-CH — was measured on the same physical hardware,
|
|
99
|
+
* guaranteeing cross-property consistency. If the `camoufox` Python package
|
|
100
|
+
* is installed and `preferCamoufox` is true, Firefox device-level data is
|
|
101
|
+
* extracted and mapped to Chrome values.
|
|
102
|
+
* Default: false
|
|
103
|
+
*/
|
|
104
|
+
useNonApifyFingerprints?: boolean;
|
|
74
105
|
};
|
|
106
|
+
/**
|
|
107
|
+
* Pre-generated FingerprintConfig JSON for native stealth. Written to --fingerprint-config
|
|
108
|
+
* before the browser launches so C++ patches get per-session hardware fingerprints.
|
|
109
|
+
*/
|
|
110
|
+
fingerprintConfig?: FingerprintConfigJson;
|
|
111
|
+
/**
|
|
112
|
+
* Pre-resolved locale triple. Populated in browser-plugin before launch so both the
|
|
113
|
+
* native-stealth launch args and the CDP-path injector read the same values and stay
|
|
114
|
+
* coherent. Consumers should prefer this over re-deriving from fingerprintOptions.
|
|
115
|
+
*/
|
|
116
|
+
resolvedLocale?: ResolvedLocale;
|
|
75
117
|
}
|
|
76
118
|
export default class CDPBrowserPlugin extends BrowserPlugin<Library, LaunchBrowserOptions, LaunchResult, NewPageOptions, NewPageResult> {
|
|
119
|
+
/**
|
|
120
|
+
* Accept flat LaunchBrowserOptions directly (not nested inside BrowserPluginOptions).
|
|
121
|
+
* Crawlee's BrowserPlugin expects `{ launchOptions: ... }` so we wrap here to ensure
|
|
122
|
+
* plugin-level options (executablePath, useNativeStealth, …) are stored in
|
|
123
|
+
* `this.launchOptions` and properly merged into every LaunchContext.
|
|
124
|
+
*/
|
|
125
|
+
constructor(library: Library, launchOptions?: Partial<LaunchBrowserOptions>);
|
|
77
126
|
private static readonly PORT_RANGE;
|
|
78
127
|
private static usedPorts;
|
|
79
128
|
private static lastAssignedPort;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-plugin.d.ts","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAO,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"browser-plugin.d.ts","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"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"}
|
package/dist/browser-plugin.js
CHANGED
|
@@ -2,9 +2,22 @@ import net from 'net';
|
|
|
2
2
|
import { BrowserPlugin, log } from 'crawlee';
|
|
3
3
|
import CDPBrowserController from './browser-controller.js';
|
|
4
4
|
import { launchChromeBrowserWithNewProfile } from './browser-process/browser.js';
|
|
5
|
+
import { generateFingerprintConfig } from './browser-process/anti-detect-config.js';
|
|
6
|
+
import { getChromeBinaryVersion, getAntiDetectBrowserPath, resolveAntiDetectBrowserPath } from './browser-process/get-chrome-executable.js';
|
|
7
|
+
import { generateNonApifyFingerprint } from './fingerprinting/non-apify-fingerprint-generator.js';
|
|
8
|
+
import { fetchProxyCountry, resolveLocale } from './fingerprinting/locale-resolver.js';
|
|
5
9
|
import { CdpLauncher } from './launcher-wrap.js';
|
|
6
10
|
import { anonymizeProxySugar } from './proxy/anonymize-proxy.js';
|
|
7
11
|
class CDPBrowserPlugin extends BrowserPlugin {
|
|
12
|
+
/**
|
|
13
|
+
* Accept flat LaunchBrowserOptions directly (not nested inside BrowserPluginOptions).
|
|
14
|
+
* Crawlee's BrowserPlugin expects `{ launchOptions: ... }` so we wrap here to ensure
|
|
15
|
+
* plugin-level options (executablePath, useNativeStealth, …) are stored in
|
|
16
|
+
* `this.launchOptions` and properly merged into every LaunchContext.
|
|
17
|
+
*/
|
|
18
|
+
constructor(library, launchOptions) {
|
|
19
|
+
super(library, { launchOptions: (launchOptions ?? {}) });
|
|
20
|
+
}
|
|
8
21
|
async getNextAvailablePort() {
|
|
9
22
|
const maxAttempts = CDPBrowserPlugin.PORT_RANGE.max - CDPBrowserPlugin.PORT_RANGE.min + 1; // Try all ports in range
|
|
10
23
|
let attempts = 0;
|
|
@@ -142,6 +155,24 @@ class CDPBrowserPlugin extends BrowserPlugin {
|
|
|
142
155
|
if (!launchOptions.browserType) {
|
|
143
156
|
launchOptions.browserType = "chrome";
|
|
144
157
|
}
|
|
158
|
+
// useNativeStealth may be set in three places (canonical, nested, or at
|
|
159
|
+
// launchContext root) — normalize to launchOptions.useNativeStealth so the
|
|
160
|
+
// rest of the pipeline reads one source of truth.
|
|
161
|
+
const nativeStealthRequested = !!launchOptions.useNativeStealth ||
|
|
162
|
+
!!launchOptions.fingerprintOptions?.useNativeStealth ||
|
|
163
|
+
!!launchContext?.useNativeStealth;
|
|
164
|
+
if (nativeStealthRequested) {
|
|
165
|
+
launchOptions.useNativeStealth = true;
|
|
166
|
+
}
|
|
167
|
+
// Auto-resolve the anti-detect binary so consumers can simply pass
|
|
168
|
+
// `useNativeStealth: true` without having to walk node_modules to find it.
|
|
169
|
+
// If the user pinned an explicit executablePath, respect it.
|
|
170
|
+
if (launchOptions.useNativeStealth && !launchOptions.executablePath) {
|
|
171
|
+
launchOptions.executablePath = resolveAntiDetectBrowserPath();
|
|
172
|
+
log.info('[AntiDetect] Auto-resolved anti-detect binary', {
|
|
173
|
+
executablePath: launchOptions.executablePath,
|
|
174
|
+
});
|
|
175
|
+
}
|
|
145
176
|
// Extract screen dimensions from fingerprint if available and not already set
|
|
146
177
|
if (fingerprint?.fingerprint?.screen && !launchOptions.windowWidth && !launchOptions.windowHeight) {
|
|
147
178
|
const screen = fingerprint.fingerprint.screen;
|
|
@@ -169,6 +200,97 @@ class CDPBrowserPlugin extends BrowserPlugin {
|
|
|
169
200
|
if (anonymizedProxyUrl) {
|
|
170
201
|
launchOptions.proxyUrl = anonymizedProxyUrl;
|
|
171
202
|
}
|
|
203
|
+
// Resolve the locale triple once per launch so native-stealth args, CDP overrides,
|
|
204
|
+
// and the FingerprintConfigJson all read the same { locale, languages, timezone }.
|
|
205
|
+
// Priority: explicit fingerprintOptions.locale → proxy country (via ipinfo.io) →
|
|
206
|
+
// fingerprint-generator language → 'en-US'.
|
|
207
|
+
{
|
|
208
|
+
const fpOpts = launchOptions.fingerprintOptions;
|
|
209
|
+
const fingerprintLanguage = fingerprint?.headers
|
|
210
|
+
? (fingerprint.headers['accept-language'] ?? fingerprint.headers['Accept-Language'])
|
|
211
|
+
: undefined;
|
|
212
|
+
// Only pay the ipinfo.io roundtrip if we actually need it — skip when the user
|
|
213
|
+
// has already pinned an explicit locale.
|
|
214
|
+
const proxyCountry = fpOpts?.locale ? undefined : await fetchProxyCountry(proxyUrl);
|
|
215
|
+
launchOptions.resolvedLocale = resolveLocale({
|
|
216
|
+
locale: fpOpts?.locale,
|
|
217
|
+
timezone: fpOpts?.timezone,
|
|
218
|
+
languages: fpOpts?.languages,
|
|
219
|
+
proxyCountry,
|
|
220
|
+
fingerprintLanguage: fingerprintLanguage?.split(',')[0]?.trim(),
|
|
221
|
+
});
|
|
222
|
+
log.debug('[Locale] Resolved locale triple', {
|
|
223
|
+
locale: launchOptions.resolvedLocale.locale,
|
|
224
|
+
timezone: launchOptions.resolvedLocale.timezone,
|
|
225
|
+
languages: launchOptions.resolvedLocale.languages,
|
|
226
|
+
source: fpOpts?.locale ? 'user' : proxyCountry ? 'proxy' : 'fingerprint',
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
// Pre-generate a per-session C++ fingerprint config for the anti-detect browser.
|
|
230
|
+
// The static default_fingerprint.json always uses the same GPU/screen/CPU — every
|
|
231
|
+
// browser instance looks identical. By generating the config from the fingerprint
|
|
232
|
+
// profile before launch, each session gets unique hardware-level C++ patches.
|
|
233
|
+
if (launchOptions.useNativeStealth) {
|
|
234
|
+
const _fpOpts = launchOptions.fingerprintOptions;
|
|
235
|
+
const proxySeedKey = proxyUrl
|
|
236
|
+
? (proxyUrl.match(/session-([^,&]+)/i)?.[1] ?? null)
|
|
237
|
+
: null;
|
|
238
|
+
// If non-Apify real-device profiles are requested, generate the profile now
|
|
239
|
+
// so C++ gets the same profile that the fingerprint injector will use.
|
|
240
|
+
let fpForConfig = fingerprint;
|
|
241
|
+
if (_fpOpts?.useNonApifyFingerprints) {
|
|
242
|
+
// User-supplied fingerprintOptions.platform wins; falls back to
|
|
243
|
+
// whatever the existing Crawlee-generated fingerprint says.
|
|
244
|
+
const userPlatform = _fpOpts?.platform;
|
|
245
|
+
const osHint = (() => {
|
|
246
|
+
const p = (fingerprint?.fingerprint?.navigator?.platform || '').toLowerCase();
|
|
247
|
+
if (p.includes('mac'))
|
|
248
|
+
return 'macos';
|
|
249
|
+
if (p.includes('linux'))
|
|
250
|
+
return 'linux';
|
|
251
|
+
return 'windows';
|
|
252
|
+
})();
|
|
253
|
+
const nonApifyFp = await generateNonApifyFingerprint({
|
|
254
|
+
platform: userPlatform,
|
|
255
|
+
os: osHint,
|
|
256
|
+
proxySeedKey,
|
|
257
|
+
});
|
|
258
|
+
fpForConfig = nonApifyFp;
|
|
259
|
+
// Store for browser-controller._newPage() — it will reuse this instead of
|
|
260
|
+
// generating a different profile (session consistency).
|
|
261
|
+
launchContext.fingerprint = fpForConfig;
|
|
262
|
+
}
|
|
263
|
+
if (fpForConfig) {
|
|
264
|
+
try {
|
|
265
|
+
const cfg = generateFingerprintConfig(fpForConfig, proxySeedKey ?? undefined, launchOptions.resolvedLocale);
|
|
266
|
+
// Align UA version with actual binary before writing the config.
|
|
267
|
+
const binaryPath = getAntiDetectBrowserPath() ?? launchOptions.executablePath;
|
|
268
|
+
if (binaryPath) {
|
|
269
|
+
const binaryVersion = getChromeBinaryVersion(binaryPath);
|
|
270
|
+
if (binaryVersion) {
|
|
271
|
+
const major = binaryVersion.split('.')[0];
|
|
272
|
+
if (cfg.navigator.userAgent) {
|
|
273
|
+
cfg.navigator.userAgent = cfg.navigator.userAgent.replace(/Chrome\/\d+\.\d+\.\d+\.\d+/, `Chrome/${major}.0.0.0`);
|
|
274
|
+
}
|
|
275
|
+
if (cfg.navigator.userAgentData) {
|
|
276
|
+
cfg.navigator.userAgentData.uaFullVersion = binaryVersion;
|
|
277
|
+
cfg.navigator.userAgentData.brands = cfg.navigator.userAgentData.brands.map(b => b.brand === 'Not_A Brand' ? b : { ...b, version: major, full_version: binaryVersion });
|
|
278
|
+
cfg.navigator.userAgentData.fullVersionList = cfg.navigator.userAgentData.brands;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
launchOptions.fingerprintConfig = cfg;
|
|
283
|
+
log.debug('[AntiDetect] Pre-generated per-session fingerprint config', {
|
|
284
|
+
platform: cfg.navigator.platform,
|
|
285
|
+
gpu: cfg.webgl.renderer.substring(0, 60),
|
|
286
|
+
screen: `${cfg.screen.width}x${cfg.screen.height}`,
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
catch (cfgErr) {
|
|
290
|
+
log.debug('[AntiDetect] Could not pre-generate fingerprint config:', { error: cfgErr });
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
172
294
|
browserProcess = await this._launchBrowser(debuggingPort, launchOptions);
|
|
173
295
|
log.debug("Browser process started", { pid: browserProcess.pid, debuggingPort });
|
|
174
296
|
try {
|
|
@@ -259,7 +381,10 @@ class CDPBrowserPlugin extends BrowserPlugin {
|
|
|
259
381
|
* @private
|
|
260
382
|
*/
|
|
261
383
|
async _launchBrowser(debuggingPort, launchOptions) {
|
|
262
|
-
const { proxyUrl, browserType, ignoreHttpsErrors = true, headless, executablePath, useExperimentalFingerprints, fingerprintOptions, maximizeWindow, windowWidth, windowHeight, userDataDir, keepUserDataDir, dnsOverHttpsServer, secureDnsMode, webrtcIpHandlingPolicy, } = launchOptions;
|
|
384
|
+
const { proxyUrl, browserType, ignoreHttpsErrors = true, headless, executablePath, useNativeStealth, useExperimentalFingerprints, fingerprintOptions, fingerprintConfig, maximizeWindow, windowWidth, windowHeight, userDataDir, keepUserDataDir, dnsOverHttpsServer, secureDnsMode, webrtcIpHandlingPolicy, } = launchOptions;
|
|
385
|
+
if (executablePath) {
|
|
386
|
+
log.info(`[AntiDetect] Launching browser binary: ${executablePath}`);
|
|
387
|
+
}
|
|
263
388
|
let browserProcess;
|
|
264
389
|
switch (browserType) {
|
|
265
390
|
case "chrome": {
|
|
@@ -269,8 +394,10 @@ class CDPBrowserPlugin extends BrowserPlugin {
|
|
|
269
394
|
ignoreHttpsErrors,
|
|
270
395
|
headless,
|
|
271
396
|
executablePath,
|
|
397
|
+
useNativeStealth,
|
|
272
398
|
useExperimentalFingerprints,
|
|
273
399
|
fingerprintOptions,
|
|
400
|
+
fingerprintConfig,
|
|
274
401
|
maximizeWindow,
|
|
275
402
|
windowWidth,
|
|
276
403
|
windowHeight,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-plugin.js","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser-plugin.js","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* anti-detect-browser.ts — Detect whether the running browser is the custom anti-detect build
|
|
3
|
+
*
|
|
4
|
+
* Used by fingerprint-injector.ts to decide which JS override modules to skip
|
|
5
|
+
* (those already handled natively by C++ patches in the anti-detect browser).
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Check if the given executable is the anti-detect browser build.
|
|
9
|
+
*
|
|
10
|
+
* Detection strategy:
|
|
11
|
+
* 1. Check for a .anti-detect-version marker file alongside the binary
|
|
12
|
+
* 2. Check the --version output for the "AntiDetect" build marker
|
|
13
|
+
* 3. Fall back to false (standard Chrome behavior)
|
|
14
|
+
*
|
|
15
|
+
* @param executablePath - Path to the Chrome/Chromium executable
|
|
16
|
+
*/
|
|
17
|
+
export declare function isAntiDetectBrowser(executablePath: string): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Synchronous version for use during browser launch (before async context).
|
|
20
|
+
*/
|
|
21
|
+
export declare function isAntiDetectBrowserSync(executablePath: string): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* When useNativeStealth=true, the fingerprint-injector skips the ENTIRE JS override
|
|
24
|
+
* pipeline — no fingerprint scripts are injected at all. This set exists for
|
|
25
|
+
* reference/documentation and for any external callers that check individual module
|
|
26
|
+
* names via shouldSkipJsOverride().
|
|
27
|
+
*
|
|
28
|
+
* Primary mechanism: fingerprint-injector.ts early-returns when nativeStealth=true,
|
|
29
|
+
* before any of these modules are built or injected.
|
|
30
|
+
*
|
|
31
|
+
* C++ patch coverage (browser/patches/):
|
|
32
|
+
* 0001 navigator.webdriver = false
|
|
33
|
+
* 0002 navigator.platform
|
|
34
|
+
* 0003 UA-CH (navigator.userAgentData + Sec-CH-UA-* headers)
|
|
35
|
+
* 0004 WebGL UNMASKED_VENDOR/RENDERER
|
|
36
|
+
* 0005 CDP automation artifact removal
|
|
37
|
+
* 0006 screen.width/height/availWidth/availHeight/colorDepth
|
|
38
|
+
* 0007 Page-level fingerprint seed (cross-process consistency)
|
|
39
|
+
* 0008 FingerprintConfig CLI ingestion
|
|
40
|
+
* 0009 Canvas document noise factors (seeded)
|
|
41
|
+
* 0010 AudioContext noise (seeded)
|
|
42
|
+
* 0011 getBoundingClientRect / getClientRects noise
|
|
43
|
+
* 0012 WebGPU adapter info
|
|
44
|
+
* 0013 queryLocalFonts() → empty
|
|
45
|
+
* 0015 Runtime.enable console side effects + sourceURL leaks
|
|
46
|
+
* cromite-override/0001 hardwareConcurrency / deviceMemory
|
|
47
|
+
* cromite-override/0002 canvas pixel shuffle (seeded)
|
|
48
|
+
* Cromite built-in font allowlist, performance.now() clamping
|
|
49
|
+
*/
|
|
50
|
+
export declare const NATIVE_STEALTH_SKIPS: Set<string>;
|
|
51
|
+
/**
|
|
52
|
+
* Returns true if a given override module should be skipped when using the
|
|
53
|
+
* anti-detect browser (fully handled by C++ patches).
|
|
54
|
+
*/
|
|
55
|
+
export declare function shouldSkipJsOverride(moduleName: string): boolean;
|
|
56
|
+
//# sourceMappingURL=anti-detect-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anti-detect-browser.d.ts","sourceRoot":"","sources":["../../src/browser-process/anti-detect-browser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmClF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CA8BvE;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,oBAAoB,aAiB/B,CAAC;AAEH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEhE"}
|