So, wondering how or if I can get Playwright working on Node.js with Functions, I've been trying but getting no luck getting Playwright to see the Chromium I have installed using a Puppeteer trick Steven taught me. Getting this error:
Failed to launch browser. Please check the following:
- Try installing the required dependencies by running `npx playwright install --with-deps` (https://playwright.dev/docs/browsers).
The original error is available in the `cause` property. Below is the error received when trying to launch a browser:
browserType.launchPersistentContext: Executable doesn't exist at /root/.cache/ms-playwright/chromium-1097/chrome-linux/chrome
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
at async PlaywrightPlugin._launch (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/playwright/playwright-plugin.js:105:40)
at async BrowserPool._launchBrowser (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/browser-pool.js:465:29)
at /usr/local/server/async /usr/local/server/src/function/node_modules/@crawlee/browser-pool/browser-pool.js:274:37
Error thrown at:
at PlaywrightPlugin._throwAugmentedLaunchError (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/abstract-classes/browser-plugin.js:145:15)
at PlaywrightPlugin._throwOnFailedLaunch (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/playwright/playwright-plugin.js:161:14)
at /usr/local/server/src/function/node_modules/@crawlee/browser-pool/playwright/playwright-plugin.js:106:33
at async PlaywrightPlugin._launch (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/playwright/playwright-plugin.js:105:40)
at async BrowserPool._launchBrowser (/usr/local/server/src/function/node_modules/@crawlee/browser-pool/browser-pool.js:465:29)
at async /usr/local/server/src/function/node_modules/@crawlee/browser-pool/browser-pool.js:274:37
execSync('apk add /usr/local/server/src/function/*.apk');
const crawler = new PlaywrightCrawler(
{
// proxyConfiguration: new ProxyConfiguration({ proxyUrls: ['...'] }),
requestHandler: router,
// Comment this option to scrape the full website.
maxRequestsPerCrawl: maxLinks,
},
new Configuration({
chromeExecutablePath: '/usr/bin/chromium-browser',
})
);
Seems like it's not picking up that configuration because the paths don't match up 🧐
Yeah I tried running npx install playwright --with-deps
in the execSync
and that did not work either
clearly it's clearing the cache, I could move the installed browsers to the folder after maybe
also for the record obvs not making a malicious crawler, making it for documentation for the discord bot I'm building to trial out
Recommended threads
- Having issues with login via CLI
``` ~/appwrite appwrite login --endpoint https://localhost/v1 --verbose ? Enter your email myvalidemai...
- How to Avoid Double Requests in function...
I'm currently using Appwrite's `functions.createExecution` in my project. I want to avoid double requests when multiple actions (like searching or pagination) a...
- Send Email Verification With REST
I am using REST to create a user on the server side after receiving form data from the client. After the account is successfully created i wanted to send the v...