Snippets

Loopify Docker - chrome - CDP

Created by Erlend
const CDP = require('chrome-remote-interface');
const spawn = require('child_process').spawn;
const sleep = require('sleep-promise');


spawn('google-chrome', ['--headless', '--remote-debugging-port=9222', '--disable-gpu', '--no-sandbox', '--hide-scrollbars']);



async function example() {
	try {
		await sleep(2000);
		// connect to endpoint
		var client = await CDP();
		// extract domains
		const { Network, Page } = client;
		// setup handlers
		Network.requestWillBeSent((params) => {
			console.log(params.request.url);
		});
		Network.dataReceived((params) => {
			console.log('Network.dataReceived', params);
		});
		Page.loadEventFired((params) => {
			console.log('Page.loadEventFired', params);
		});
		// enable events then start!
		await Promise.all([Network.enable(), Page.enable()]);
		await Page.navigate({ url: 'https://static.pexels.com/photos/208213/pexels-photo-208213.jpeg' });
		await Page.loadEventFired();
	} catch (err) {
		console.error(err);
	} finally {
		if (client) {
			await client.close();
		}
	}
}

example();

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.