为了账号安全,请及时绑定邮箱和手机立即绑定

​在C#中解析html的最佳方法是什么?

​在C#中解析html的最佳方法是什么?

慕桂英3389331 2019-05-25 17:20:45
在C#中解析html的最佳方法是什么?我正在寻找一个库/方法来解析一个html文件,该文件具有比通用xml解析库更多的html特定功能。
查看完整描述

3 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

Html敏捷包

这是一个敏捷的HTML解析器,它构建一个读/写DOM并支持普通的XPATH或XSLT(你实际上不需要理解XPATH或XSLT来使用它,不用担心......)。它是一个.NET代码库,允许您解析“out of the web”HTML文件。解析器非常容忍“真实世界”格式错误的HTML。对象模型与提出System.Xml非常相似,但对于HTML文档(或流)。

查看完整回答
反对 回复 2019-05-25
?
慕虎7371278

TA贡献1802条经验 获得超4个赞

你可以做很多事情,而不必坚持第三方产品和mshtml(即互操作)。使用System.Windows.Forms.WebBrowser。从那里,您可以在HtmlDocument上执行“GetElementById”或在HtmlElements上执行“GetElementsByTagName”。如果你想与浏览器实际交互(例如模拟按钮点击),你可以使用一点反射(imo比Interop更小的邪恶)来做到这一点:


var wb = new WebBrowser()

...告诉浏览器导航(与此问题相关)。然后在Document_Completed事件上,您可以模拟这样的点击。


var doc = wb.Browser.Document

var elem = doc.GetElementById(elementId);

object obj = elem.DomElement;

System.Reflection.MethodInfo mi = obj.GetType().GetMethod("click");

mi.Invoke(obj, new object[0]);

你可以做类似的反思,提交表格等。


请享用。


查看完整回答
反对 回复 2019-05-25
  • 3 回答
  • 0 关注
  • 633 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信