You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

devtools-protocol

Package Overview
Dependencies
Maintainers
3
Versions
1224
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

devtools-protocol

The Chrome DevTools Protocol JSON


Version published
Maintainers
3
Created

Package description

What is devtools-protocol?

The devtools-protocol npm package provides a set of TypeScript definitions for the Chrome DevTools Protocol, which allows you to interact with the Chrome browser for tasks such as debugging, profiling, and inspecting web pages programmatically.

What are devtools-protocol's main functionalities?

Page Navigation

This feature allows you to navigate to a specific URL and wait for the page to load. The code sample demonstrates how to use the Page domain to navigate to 'https://example.com' and wait for the load event.

const CDP = require('chrome-remote-interface');

(async function() {
  const client = await CDP();
  const { Page } = client;
  await Page.enable();
  await Page.navigate({ url: 'https://example.com' });
  await Page.loadEventFired();
  console.log('Page loaded');
  await client.close();
})();

JavaScript Execution

This feature allows you to execute JavaScript code within the context of the web page. The code sample demonstrates how to evaluate a JavaScript expression to get the page title.

const CDP = require('chrome-remote-interface');

(async function() {
  const client = await CDP();
  const { Runtime } = client;
  await Runtime.enable();
  const result = await Runtime.evaluate({ expression: 'document.title' });
  console.log('Page title:', result.result.value);
  await client.close();
})();

Network Monitoring

This feature allows you to monitor network requests made by the web page. The code sample demonstrates how to listen for network requests and log the URLs of the requests.

const CDP = require('chrome-remote-interface');

(async function() {
  const client = await CDP();
  const { Network } = client;
  await Network.enable();
  Network.requestWillBeSent((params) => {
    console.log('Request:', params.request.url);
  });
  await client.Page.navigate({ url: 'https://example.com' });
  await client.Page.loadEventFired();
  await client.close();
})();

Other packages similar to devtools-protocol

Readme

Source

devtools-protocol devtools-protocol on npm

:warning: This repository is related to Chrome DevTools Protocol, but does not track issues regarding its definition or implementation. If you want to file an issue for the Chrome DevTools Protocol, please open an issue on https://crbug.com under component: Platform>DevTools>Platform.

Use the protocol viewer for navigating the protocol.

TypeScript definitions for the protocol's types are available in 'types/protocol.d.ts'. Mappings from Commands and events to these types are available in either generated DomainApi style in types/protocol-proxy-api.d.ts or in simple name-to-type-interface style in types/protocol-mapping.d.ts.

Also, this repo is published as the devtools-protocol npm module.

FAQs

Package last updated on 01 Aug 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc