CDPSession
CDPSession
实例用于讨论原始 Chrome Devtools 协议:
¥The CDPSession
instances are used to talk raw Chrome Devtools Protocol:
-
协议方法可以通过
session.send
方法调用。¥protocol methods can be called with
session.send
method. -
可以使用
session.on
方法订阅协议事件。¥protocol events can be subscribed to with
session.on
method.
有用的链接:
¥Useful links:
-
有关 DevTools 协议的文档可以在这里找到:DevTools 协议查看器。
¥Documentation on DevTools Protocol can be found here: DevTools Protocol Viewer.
-
DevTools 协议入门:https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md
¥Getting Started with DevTools Protocol: https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md
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
});
方法
¥Methods
detach
Added before v1.9从目标分离 CDPSession。一旦分离,CDPSession 对象将不会触发任何事件,也不能用于发送消息。
¥Detaches the CDPSession from the target. Once detached, the CDPSession object won't emit any events and can't be used to send messages.
用法
¥Usage
await cdpSession.detach();
返回
¥Returns
send
Added before v1.9用法
¥Usage
await cdpSession.send(method);
await cdpSession.send(method, params);
参数
¥Arguments
协议方法名称。
¥Protocol method name.
可选方法参数。
¥Optional method parameters.
返回
¥Returns