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();
|