一尘不染

如何在C#中将HTML转换为文本?

html

我正在寻找C#代码以将HTML文档转换为纯文本。

我不是在寻找简单的标记剥离方法,而是会输出纯文本并 合理 保留原始布局的东西。

输出应如下所示:

W3C的Html2Txt

我看过HTML Agility Pack,但我认为这不是我所需要的。有人还有其他建议吗?

编辑: 我只是从CodePlex下载HTML Agility
Pack ,并运行了Html2Txt项目。真令人失望(至少是将html转换为文本的模块)!它所做的只是剥离标签,展平表等。输出看起来与生成的Html2Txt
@ W3C有所不同。不幸的是,该源似乎不可用。我一直在寻找是否有更多的“罐头”解决方案可用。

编辑2: 谢谢大家的建议。 FlySwat
向我提示了我要走的方向。我可以使用System.Diagnostics.Process类的“突降”开关运行lynx.exe将文本发送到标准输出,并与捕获标准输出ProcessStartInfo.UseShellExecute = falseProcessStartInfo.RedirectStandardOutput = true。我将所有这些包装在C#类中。只会偶尔调用此代码,因此与在代码中进行操作相比,我不太担心产生新进程。另外,山猫快!


阅读 313

收藏
2020-05-10

共1个答案

一尘不染

您正在寻找的是文本模式DOM渲染器,该输出器可以输出文本,就像Lynx或其他文本浏览器一样……这比您预期的要难得多。

2020-05-10