繁体   English   中英

.net / C的Html解析器和对象模型#

[英]Html Parser & Object Model for .net/C#

我正在寻找使用.net解析html以测试或断言其内容。

HtmlDocument doc = GetDocument(“some html”)List forms = doc.Forms()Link link = doc.GetLinkByText(“New Customer”)

这个想法是允许人们用c#编写测试,类似于他们在webrat(ruby)中的测试。

访问('\\')fills_in“名称”,“mick”点击“保存”

我已经看过html敏捷包,sgmlreader等,但有人为此创建了一个对象模型,即一组表示html元素的类,如表单,按钮等?

干杯。

这里是用于html解析的好库,没有创建像HtmlButton,HtmlInput这样的对象但是如果你不想使用HTML DOM,那么它是一个很好的开始并自己创建它们

据我所知,最接近.NET中HTML DOM的是HTML DOM。

您可以使用Windows窗体WebBrowser控件,使用HTML加载它,然后从外部访问DOM。

顺便说一句,这是.NET。 任何适用于VB.NET的代码都适用于C#。

你有两个主要选择:

  1. 使用一些浏览器引擎(即Internet Explorer)将解析你的html,然后给你访问生成的DOM。 这个选项将要求你与浏览器引擎进行一些互操作(在它是简单的COM的情况下)

  2. 使用一些轻量级解析器,如HtmlAgilityPack

听起来像你正在尝试进行HTML单元测试。 你看过Selenium了吗? 它甚至还有C#库,因此您可以在C#中编写HTML单元测试并声明元素存在,并且它们具有正确的值,甚至可以单击链接。 它甚至适用于JavaScript / AJAX站点。

HTML的最佳解析器是HTQL COM。 使用可以使用HTQL查询来检索HTML内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM