跳到主要内容

CDPSession

CDPSession 实例用于直接与 Chrome DevTools 协议进行通信:

  • 可以通过 session.send 方法调用协议方法
  • 可以通过 session.on 方法订阅协议事件

有用的链接:

const client = await page.context().newCDPSession(page);
await client.send('Animation.enable');
client.on('Animation.animationCreated', () => console.log('Animation created!'));
const response = await client.send('Animation.getPlaybackRate');
console.log('playback rate is ' + response.playbackRate);
await client.send('Animation.setPlaybackRate', {
playbackRate: response.playbackRate / 2
});

方法

detach

在 v1.9 之前添加 cdpSession.detach

将 CDPSession 从目标对象分离。一旦分离,CDPSession 对象将不再发出任何事件,也不能用于发送消息。

用法

await cdpSession.detach();

返回值


send

v1.9 版本前添加 cdpSession.send

用法

await cdpSession.send(method);
await cdpSession.send(method, params);

参数

  • method string#

    协议方法名称。

  • params Object (可选)#

    可选的方法参数。

返回值