C# NET浏览器仿真器API

C# NET浏览器仿真器API,c#,.net,browser,emulation,C#,.net,Browser,Emulation,我正在为.NET寻找一个好的浏览器仿真器API。我一直在研究WatiN,但我真的不需要(想要!)GUI,我只需要HTML/DOM解析、JavaScript运行时和状态模拟、缓存和其他一切 我要找的是这样的东西 using (var browser = Browser.Create(BrowserType.Firefox)) { // Download all page resources and executes JS var page = browser.Open("http://lo

我正在为.NET寻找一个好的浏览器仿真器API。我一直在研究WatiN,但我真的不需要(想要!)GUI,我只需要HTML/DOM解析、JavaScript运行时和状态模拟、缓存和其他一切

我要找的是这样的东西

using (var browser = Browser.Create(BrowserType.Firefox))
{
  // Download all page resources and executes JS
  var page = browser.Open("http://localhost:8080");

  // Lookup <a id="nextButton" href="#" /> and trigger click event
  page.Find("nextButton").Click();
}
使用(var browser=browser.Create(BrowserType.Firefox))
{
//下载所有页面资源并执行JS
变量页=浏览器。打开(“http://localhost:8080");
//查找和触发单击事件
page.Find(“下一个按钮”)。单击();
}
你遇到过类似的事情吗?
谢谢

为什么不使用真正的浏览器?使用WebBrowser控件。

我在这方面取得了一些成功-您当然可以以API的方式运行WebBrowser控件。我在Windows窗体消息循环中运行它,从非UI线程将浏览器命令封送到它并不难。你可以完全访问所有内容,而C#4.0 dynamic关键字只是让它更容易编程,所以我说去做吧。是的,部分问题是我想在windows服务中做,一个非UI线程。我将研究richdiet的建议。您可能需要为此服务启用桌面访问,但除此之外,似乎是可能的。