@crawlee/browser-pool 3.13.6-beta.0 → 4.0.0-beta.0
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/abstract-classes/browser-controller.d.ts +4 -4
- package/abstract-classes/browser-controller.d.ts.map +1 -1
- package/abstract-classes/browser-controller.js +43 -117
- package/abstract-classes/browser-controller.js.map +1 -1
- package/abstract-classes/browser-plugin.d.ts +5 -16
- package/abstract-classes/browser-plugin.d.ts.map +1 -1
- package/abstract-classes/browser-plugin.js +19 -71
- package/abstract-classes/browser-plugin.js.map +1 -1
- package/anonymize-proxy.js +4 -8
- package/anonymize-proxy.js.map +1 -1
- package/browser-pool.d.ts +6 -6
- package/browser-pool.d.ts.map +1 -1
- package/browser-pool.js +77 -209
- package/browser-pool.js.map +1 -1
- package/container-proxy-server.js +3 -6
- package/container-proxy-server.js.map +1 -1
- package/events.js +4 -7
- package/events.js.map +1 -1
- package/fingerprinting/hooks.d.ts +3 -3
- package/fingerprinting/hooks.d.ts.map +1 -1
- package/fingerprinting/hooks.js +13 -18
- package/fingerprinting/hooks.js.map +1 -1
- package/fingerprinting/types.js +6 -9
- package/fingerprinting/types.js.map +1 -1
- package/fingerprinting/utils.d.ts +2 -2
- package/fingerprinting/utils.d.ts.map +1 -1
- package/fingerprinting/utils.js +9 -13
- package/fingerprinting/utils.js.map +1 -1
- package/index.d.ts +13 -13
- package/index.d.ts.map +1 -1
- package/index.js +11 -26
- package/index.js.map +1 -1
- package/launch-context.d.ts +2 -9
- package/launch-context.d.ts.map +1 -1
- package/launch-context.js +12 -73
- package/launch-context.js.map +1 -1
- package/logger.js +2 -6
- package/logger.js.map +1 -1
- package/package.json +19 -25
- package/playwright/playwright-browser.js +6 -30
- package/playwright/playwright-browser.js.map +1 -1
- package/playwright/playwright-controller.d.ts +2 -2
- package/playwright/playwright-controller.d.ts.map +1 -1
- package/playwright/playwright-controller.js +9 -75
- package/playwright/playwright-controller.js.map +1 -1
- package/playwright/playwright-plugin.d.ts +6 -6
- package/playwright/playwright-plugin.d.ts.map +1 -1
- package/playwright/playwright-plugin.js +19 -106
- package/playwright/playwright-plugin.js.map +1 -1
- package/proxy-server.js +3 -6
- package/proxy-server.js.map +1 -1
- package/puppeteer/puppeteer-controller.d.ts +1 -1
- package/puppeteer/puppeteer-controller.d.ts.map +1 -1
- package/puppeteer/puppeteer-controller.js +13 -17
- package/puppeteer/puppeteer-controller.js.map +1 -1
- package/puppeteer/puppeteer-plugin.d.ts +5 -5
- package/puppeteer/puppeteer-plugin.d.ts.map +1 -1
- package/puppeteer/puppeteer-plugin.js +16 -23
- package/puppeteer/puppeteer-plugin.js.map +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/utils.d.ts +3 -3
- package/utils.d.ts.map +1 -1
- package/utils.js +1 -4
- package/utils.js.map +1 -1
- package/index.mjs +0 -19
- package/playwright/load-firefox-addon.d.ts +0 -2
- package/playwright/load-firefox-addon.d.ts.map +0 -1
- package/playwright/load-firefox-addon.js +0 -86
- package/playwright/load-firefox-addon.js.map +0 -1
- package/tab-as-a-container/background.js +0 -433
- package/tab-as-a-container/content.js +0 -611
- package/tab-as-a-container/manifest.json +0 -21
|
@@ -1,29 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const logger_1 = require("../logger");
|
|
8
|
-
const utils_1 = require("../utils");
|
|
9
|
-
const puppeteer_controller_1 = require("./puppeteer-controller");
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { BrowserPlugin } from '../abstract-classes/browser-plugin.js';
|
|
3
|
+
import { anonymizeProxySugar } from '../anonymize-proxy.js';
|
|
4
|
+
import { log } from '../logger.js';
|
|
5
|
+
import { noop } from '../utils.js';
|
|
6
|
+
import { PuppeteerController } from './puppeteer-controller.js';
|
|
10
7
|
const PROXY_SERVER_ARG = '--proxy-server=';
|
|
11
|
-
class PuppeteerPlugin extends
|
|
8
|
+
export class PuppeteerPlugin extends BrowserPlugin {
|
|
12
9
|
async _launch(launchContext) {
|
|
13
10
|
let oldPuppeteerVersion = false;
|
|
14
11
|
try {
|
|
15
12
|
const jsonPath = require.resolve('puppeteer/package.json');
|
|
16
|
-
const parsed = JSON.parse(await
|
|
13
|
+
const parsed = JSON.parse(await readFile(jsonPath, 'utf-8'));
|
|
17
14
|
const version = +parsed.version.split('.')[0];
|
|
18
15
|
oldPuppeteerVersion = version < 22;
|
|
19
16
|
}
|
|
20
17
|
catch {
|
|
21
18
|
// ignore
|
|
22
19
|
}
|
|
23
|
-
const { launchOptions, userDataDir, useIncognitoPages,
|
|
24
|
-
if (experimentalContainers) {
|
|
25
|
-
throw new Error('Experimental containers are only available with Playwright');
|
|
26
|
-
}
|
|
20
|
+
const { launchOptions, userDataDir, useIncognitoPages, proxyUrl } = launchContext;
|
|
27
21
|
launchOptions.userDataDir = launchOptions.userDataDir ?? userDataDir;
|
|
28
22
|
if (launchOptions.headless === false) {
|
|
29
23
|
if (Array.isArray(launchOptions.args)) {
|
|
@@ -38,7 +32,7 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
38
32
|
}
|
|
39
33
|
let browser;
|
|
40
34
|
{
|
|
41
|
-
const [anonymizedProxyUrl, close] = await
|
|
35
|
+
const [anonymizedProxyUrl, close] = await anonymizeProxySugar(proxyUrl);
|
|
42
36
|
if (proxyUrl) {
|
|
43
37
|
const proxyArg = `${PROXY_SERVER_ARG}${anonymizedProxyUrl ?? proxyUrl}`;
|
|
44
38
|
if (Array.isArray(launchOptions.args)) {
|
|
@@ -66,13 +60,13 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
66
60
|
const page = await target.page();
|
|
67
61
|
if (page) {
|
|
68
62
|
page.on('error', (error) => {
|
|
69
|
-
|
|
70
|
-
page.close().catch(
|
|
63
|
+
log.exception(error, 'Page crashed.');
|
|
64
|
+
page.close().catch(noop);
|
|
71
65
|
});
|
|
72
66
|
}
|
|
73
67
|
}
|
|
74
68
|
catch (error) {
|
|
75
|
-
|
|
69
|
+
log.exception(error, 'Failed to retrieve page from target.');
|
|
76
70
|
}
|
|
77
71
|
});
|
|
78
72
|
const boundMethods = [
|
|
@@ -95,7 +89,7 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
95
89
|
return async (...args) => {
|
|
96
90
|
let page;
|
|
97
91
|
if (useIncognitoPages) {
|
|
98
|
-
const [anonymizedProxyUrl, close] = await
|
|
92
|
+
const [anonymizedProxyUrl, close] = await anonymizeProxySugar(proxyUrl);
|
|
99
93
|
try {
|
|
100
94
|
const context = (await browser[method]({
|
|
101
95
|
proxyServer: anonymizedProxyUrl ?? proxyUrl,
|
|
@@ -142,8 +136,8 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
142
136
|
});
|
|
143
137
|
return browser;
|
|
144
138
|
}
|
|
145
|
-
|
|
146
|
-
return new
|
|
139
|
+
createController() {
|
|
140
|
+
return new PuppeteerController(this);
|
|
147
141
|
}
|
|
148
142
|
async _addProxyToLaunchOptions(_launchContext) {
|
|
149
143
|
/*
|
|
@@ -176,5 +170,4 @@ class PuppeteerPlugin extends browser_plugin_1.BrowserPlugin {
|
|
|
176
170
|
return true;
|
|
177
171
|
}
|
|
178
172
|
}
|
|
179
|
-
exports.PuppeteerPlugin = PuppeteerPlugin;
|
|
180
173
|
//# sourceMappingURL=puppeteer-plugin.js.map
|
|
@@ -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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"}
|