@crawlee/browser-pool 3.0.0-beta.7 → 3.0.0-beta.70
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 +77 -130
- package/abstract-classes/browser-controller.d.ts +4 -60
- package/abstract-classes/browser-controller.d.ts.map +1 -1
- package/abstract-classes/browser-controller.js.map +1 -1
- package/abstract-classes/browser-plugin.d.ts +4 -3
- package/abstract-classes/browser-plugin.d.ts.map +1 -1
- package/abstract-classes/browser-plugin.js.map +1 -1
- package/browser-pool.d.ts +17 -16
- package/browser-pool.d.ts.map +1 -1
- package/browser-pool.js +18 -21
- package/browser-pool.js.map +1 -1
- package/fingerprinting/hooks.d.ts +4 -4
- package/fingerprinting/hooks.d.ts.map +1 -1
- package/fingerprinting/hooks.js +12 -12
- package/fingerprinting/hooks.js.map +1 -1
- package/fingerprinting/types.d.ts +1 -1
- package/fingerprinting/types.d.ts.map +1 -1
- package/fingerprinting/utils.d.ts +2 -2
- package/fingerprinting/utils.d.ts.map +1 -1
- package/fingerprinting/utils.js.map +1 -1
- package/index.d.ts +5 -5
- package/index.d.ts.map +1 -1
- package/index.js +4 -4
- package/launch-context.d.ts +4 -4
- package/launch-context.d.ts.map +1 -1
- package/launch-context.js +9 -1
- package/launch-context.js.map +1 -1
- package/package.json +15 -12
- package/playwright/browser.d.ts +5 -1
- package/playwright/browser.d.ts.map +1 -1
- package/playwright/browser.js +13 -0
- package/playwright/browser.js.map +1 -1
- package/playwright/playwright-controller.d.ts +2 -1
- package/playwright/playwright-controller.d.ts.map +1 -1
- package/playwright/playwright-controller.js.map +1 -1
- package/playwright/playwright-plugin.d.ts +2 -2
- package/playwright/playwright-plugin.d.ts.map +1 -1
- package/puppeteer/puppeteer-controller.d.ts +2 -1
- package/puppeteer/puppeteer-controller.d.ts.map +1 -1
- package/puppeteer/puppeteer-controller.js +3 -3
- package/puppeteer/puppeteer-controller.js.map +1 -1
- package/puppeteer/puppeteer-plugin.d.ts +3 -3
- package/puppeteer/puppeteer-plugin.d.ts.map +1 -1
- package/puppeteer/puppeteer-plugin.js +13 -9
- package/puppeteer/puppeteer-plugin.js.map +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer-controller.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"puppeteer-controller.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAM3E,qBAAa,mBAAoB,SAAQ,iBAAiB,CAAC,OAAO,SAAS,CAAC;IACxE,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;cAiB9E,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;cAuE5E,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBtC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAI9D,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhF"}
|
|
@@ -84,7 +84,7 @@ class PuppeteerController extends browser_controller_1.BrowserController {
|
|
|
84
84
|
async _kill() {
|
|
85
85
|
const browserProcess = this.browser.process();
|
|
86
86
|
if (!browserProcess) {
|
|
87
|
-
|
|
87
|
+
logger_1.log.debug('Browser was connected using the `puppeteer.connect` method no browser to kill.');
|
|
88
88
|
return;
|
|
89
89
|
}
|
|
90
90
|
const timeout = setTimeout(() => {
|
|
@@ -97,8 +97,8 @@ class PuppeteerController extends browser_controller_1.BrowserController {
|
|
|
97
97
|
await this.browser.close();
|
|
98
98
|
clearTimeout(timeout);
|
|
99
99
|
}
|
|
100
|
-
catch (
|
|
101
|
-
|
|
100
|
+
catch (error) {
|
|
101
|
+
logger_1.log.debug('Browser was already killed.', { error });
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
_getCookies(page) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer-controller.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":";;;AAAA,4CAA2C;
|
|
1
|
+
{"version":3,"file":"puppeteer-controller.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type Puppeteer from './puppeteer-proxy-per-page';
|
|
2
2
|
import type { Browser } from './puppeteer-proxy-per-page';
|
|
3
|
-
import { BrowserController } from '../abstract-classes/browser-controller';
|
|
3
|
+
import type { BrowserController } from '../abstract-classes/browser-controller';
|
|
4
4
|
import { BrowserPlugin } from '../abstract-classes/browser-plugin';
|
|
5
|
-
import { LaunchContext } from '../launch-context';
|
|
5
|
+
import type { LaunchContext } from '../launch-context';
|
|
6
6
|
export declare class PuppeteerPlugin extends BrowserPlugin<typeof Puppeteer> {
|
|
7
7
|
protected _launch(launchContext: LaunchContext<typeof Puppeteer>): Promise<Browser>;
|
|
8
8
|
protected _createController(): BrowserController<typeof Puppeteer>;
|
|
9
9
|
protected _addProxyToLaunchOptions(launchContext: LaunchContext<typeof Puppeteer>): Promise<void>;
|
|
10
|
-
protected _isChromiumBasedBrowser(
|
|
10
|
+
protected _isChromiumBasedBrowser(_launchContext: LaunchContext<typeof Puppeteer>): boolean;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=puppeteer-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer-plugin.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"puppeteer-plugin.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAA0B,MAAM,4BAA4B,CAAC;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAQvD,qBAAa,eAAgB,SAAQ,aAAa,CAAC,OAAO,SAAS,CAAC;cAChD,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,OAAO,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAmIzF,SAAS,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,OAAO,SAAS,CAAC;cAIlD,wBAAwB,CACpC,aAAa,EAAE,aAAa,CAAC,OAAO,SAAS,CAAC,GAC/C,OAAO,CAAC,IAAI,CAAC;IA8BhB,SAAS,CAAC,uBAAuB,CAAC,cAAc,EAAE,aAAa,CAAC,OAAO,SAAS,CAAC,GAAG,OAAO;CAG9F"}
|
|
@@ -58,9 +58,13 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
58
58
|
logger_1.log.exception(error, 'Failed to retrieve page from target.');
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
|
-
const
|
|
61
|
+
const boundMethods = ['newPage', 'close', 'userAgent', 'createIncognitoBrowserContext', 'version']
|
|
62
|
+
.reduce((map, method) => {
|
|
63
|
+
map[method] = browser[method]?.bind(browser);
|
|
64
|
+
return map;
|
|
65
|
+
}, {});
|
|
62
66
|
browser = new Proxy(browser, {
|
|
63
|
-
get: (target, property) => {
|
|
67
|
+
get: (target, property, receiver) => {
|
|
64
68
|
if (property === 'newPage') {
|
|
65
69
|
return (async (...args) => {
|
|
66
70
|
let page;
|
|
@@ -83,7 +87,7 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
83
87
|
}
|
|
84
88
|
}
|
|
85
89
|
else {
|
|
86
|
-
page = await newPage(...args);
|
|
90
|
+
page = await boundMethods.newPage(...args);
|
|
87
91
|
}
|
|
88
92
|
/*
|
|
89
93
|
// DO NOT USE YET! DOING SO DISABLES CACHE WHICH IS 50% PERFORMANCE HIT!
|
|
@@ -104,7 +108,10 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
104
108
|
return page;
|
|
105
109
|
});
|
|
106
110
|
}
|
|
107
|
-
|
|
111
|
+
if (property in boundMethods) {
|
|
112
|
+
return boundMethods[property];
|
|
113
|
+
}
|
|
114
|
+
return Reflect.get(target, property, receiver);
|
|
108
115
|
},
|
|
109
116
|
});
|
|
110
117
|
return browser;
|
|
@@ -140,11 +147,8 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
140
147
|
}
|
|
141
148
|
*/
|
|
142
149
|
}
|
|
143
|
-
_isChromiumBasedBrowser(
|
|
144
|
-
|
|
145
|
-
// @ts-expect-error cannot find .product on this.library
|
|
146
|
-
const browserName = launchOptions.product || this.library.product;
|
|
147
|
-
return browserName === 'chrome';
|
|
150
|
+
_isChromiumBasedBrowser(_launchContext) {
|
|
151
|
+
return true;
|
|
148
152
|
}
|
|
149
153
|
}
|
|
150
154
|
exports.PuppeteerPlugin = PuppeteerPlugin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer-plugin.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"puppeteer-plugin.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":"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"}
|