Skip to content

Commit 069b0af

Browse files
feat: create option to connect remote browser (#33)
Co-authored-by: Farnabaz <[email protected]>
1 parent 527aed9 commit 069b0af

File tree

1 file changed

+18
-7
lines changed

1 file changed

+18
-7
lines changed

src/index.js

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,14 @@ const ERROR_CODES = Object.freeze({
1717
})
1818
let browser = null
1919

20-
async function analyze (originalUrl) {
20+
const puppeteerDefaultArgs = {
21+
args: puppeteerArgs,
22+
defaultViewport: puppeteerViewport,
23+
headless: true,
24+
ignoreHTTPSErrors: true
25+
}
26+
27+
async function analyze (originalUrl, options = {}) {
2128
// Parse url
2229
let url
2330
try {
@@ -29,12 +36,16 @@ async function analyze (originalUrl) {
2936
}
3037
// Start browser if not launched
3138
if (!browser) {
32-
browser = await puppeteer.launch({
33-
args: puppeteerArgs,
34-
defaultViewport: puppeteerViewport,
35-
headless: true,
36-
ignoreHTTPSErrors: true
37-
})
39+
if (options.browserWSEndpoint) {
40+
browser = await puppeteer.connect({
41+
browserWSEndpoint: options.browserWSEndpoint,
42+
...puppeteerDefaultArgs
43+
});
44+
} else {
45+
browser = await puppeteer.launch({
46+
...puppeteerDefaultArgs
47+
})
48+
}
3849
browser.on('disconnected', () => {
3950
browser = null
4051
})

0 commit comments

Comments
 (0)