Optimus is headless Web Browser fully implemented on .net.
- Public release versions are available on NuGet.
- Unstable versions are available on the appveyour nuget feed here: https://ci.appveyor.com/nuget/optimus-private
- Quick start
Create console application and paste the code:
using System.Linq;
using Knyaz.Optimus;
using Knyaz.Optimus.Dom.Elements;
using Console = System.Console;
namespace ConsoleApplication1
{
class Program
{
static async void Main(string[] args)
{
var engine = EngineBuilder.New()
.UseJint()// Enable JavaScripts execution.
.Build(); // Builds the Optimus engine.
//Request the web page.
var page = await engine.OpenUrl("http://google.com");
//Get the document
var document = page.Document;
//Get DOM items
Console.WriteLine("The first document child node is: " + document.FirstChild);
Console.WriteLine("The first document body child node is: " + document.Body.FirstChild);
Console.WriteLine("The first element tag name is: " + document.ChildNodes.OfType<HtmlElement>().First().TagName);
Console.WriteLine("Whole document innerHTML length is: " + document.DocumentElement.InnerHTML.Length);
Console.ReadKey();
}
}
}
- More code snippets
- Prime - the web browser based on Optimus and Optimus.Graphics.
- Knyaz.Optimus - The main assembly with implementation of web browser (without GUI and rendering).
- Knyaz.Optimus.Tests - Acceptance tests library.
- Knyaz.Optimus.JsTests - Simple Js tests.
- Knyaz.Optimus.UnitTests - Pure unit tests.
- Knyaz.Optimus.WfApp - Simple test application with DOM explorer and Log window.
Optimus is released under the MIT license.