DumbPrograms.ChromeDevTools
0.1.20
See the version list below for details.
dotnet add package DumbPrograms.ChromeDevTools --version 0.1.20
NuGet\Install-Package DumbPrograms.ChromeDevTools -Version 0.1.20
<PackageReference Include="DumbPrograms.ChromeDevTools" Version="0.1.20" />
<PackageVersion Include="DumbPrograms.ChromeDevTools" Version="0.1.20" />
<PackageReference Include="DumbPrograms.ChromeDevTools" />
paket add DumbPrograms.ChromeDevTools --version 0.1.20
#r "nuget: DumbPrograms.ChromeDevTools, 0.1.20"
#:package DumbPrograms.ChromeDevTools@0.1.20
#addin nuget:?package=DumbPrograms.ChromeDevTools&version=0.1.20
#tool nuget:?package=DumbPrograms.ChromeDevTools&version=0.1.20
ChromeDevTools
.Net library to interact with Chrome using the Chrome DevTools Protocol
When Chrome is started with --remote-debugging-port=9222, it can be controlled programatically via REST API and WebSocket using Chrome DevTools Protocol.
This library provides .Net friendly API to work with the protocol.
Getting Started
If you already have Chrome running with --remote-debugging-port=9222, you can simply start with
var devTools = new DevToolsClient(9222);
This library includes ChromeProcessHelper to help you start Chrome with relavent commandline args
using (var chrome = ChromeProcessHelper.StartNew())
{
var devTools = chrome.GetDevTools();
}
Once you have DevToolsClient, you can explore inspectable targets
var targets = from t in await devTools.GetInspectableTargets()
where t.Type == "page"
select t;
Then you can pick up a target and inspect
var t0 = targets.First();
using (var inspector = await devTools.Inspect(t0))
{
await inspector.Page.Enable();
await inspector.Page.Navigate("https://github.com");
var e = await inspector.Page.LoadEventFiredEvent();
Console.WriteLine($"Page loaded at {e.Timestamp.Value}");
}
Please keep in mind that these APIs are almost always async, putting Async suffices to the methond names are unnecessary.
Just remember to use await for the API calls unless you don't want.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 12.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.