CDPSession
CDPSession インスタンスは、生のChrome Devtools Protocolをやり取りするために使用されます。
- プロトコルメソッドは
session.sendメソッドで呼び出すことができます。 - プロトコルイベントは
session.onメソッドで購読できます。
便利なリンク
- DevToolsプロトコルのドキュメントはこちらで確認できます: DevTools Protocol Viewer。
- DevToolsプロトコルの入門: https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md
var client = await Page.Context.NewCDPSessionAsync(Page);
await client.SendAsync("Runtime.enable");
client.Event("Animation.animationCreated").OnEvent += (_, _) => Console.WriteLine("Animation created!");
var response = await client.SendAsync("Animation.getPlaybackRate");
var playbackRate = response.Value.GetProperty("playbackRate").GetDouble();
Console.WriteLine("playback rate is " + playbackRate);
await client.SendAsync("Animation.setPlaybackRate", new() { { "playbackRate", playbackRate / 2 } });
メソッド
DetachAsync
v1.9より前に追加CDPSessionをターゲットからデタッチします。デタッチされると、CDPSessionオブジェクトはイベントを発行せず、メッセージを送信するために使用できません。
使用法
await CdpSession.DetachAsync();
戻り値
Event
追加バージョン: v.1.30指定されたCDPイベント名に対するイベントエミッターを返します。
使用法
CdpSession.Event(eventName);
引数
戻り値
SendAsync
v1.9より前に追加使用法
await CdpSession.SendAsync(method, params);
引数
戻り値
- [JsonElement?]#