【问题标题】:How can I get HTML output from NBoilerPipe?如何从 NBoilerPipe 获取 HTML 输出?
【发布时间】:2012-12-11 17:49:41
【问题描述】:

NBoilerPipe 是 BoilerPipe Java 库的 Mono 端口。我已经设法在 .NET 4 中正常工作,没有太多麻烦(一些库引用需要修复/等)。但是,通过代码搜索,我找不到任何用于 HTML 输出的“钩子”。例如,GetText() 方法只有一个输入参数,我看不到任何其他方法。如何从 NBoilerPipe 获取 HTML 输出?

这是在 .NET4 中运行的示例 NBoilerPipe 代码:

          String url = "http:// <etc> ";
        String page = String.Empty;
        WebRequest request = WebRequest.Create (url);
        HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
        Stream stream = response.GetResponseStream ();
        using (StreamReader streamReader = new StreamReader (stream, Encoding.UTF8)) {
            page = streamReader.ReadToEnd ();
        }           
        String text = ArticleExtractor.INSTANCE.GetText (page);
        Console.WriteLine ("Text: \n" + text);

【问题讨论】:

  • NBoilerPipe的目的不就是从html中提取文本吗?我不确定我是否理解您要执行的操作。
  • Boilerpipe 从页面中提取内容,过滤“样板”——如页眉、页脚、菜单、广告等。原始的 BoilerPipe 可以将内容作为 HTML 片段返回,或者进一步过滤以提供文本。 HTML 片段很有用,因为它们包含诸如 p 标记之类的内容。

标签: .net html mono boilerpipe


【解决方案1】:

我有同样的问题。我设法通过使用以下方法解决了它。

http://boilerpipe-web.appspot.com/

【讨论】:

  • 请注意 link-only answers 是不鼓励的,所以答案应该是寻找解决方案的终点(与另一个中途停留的参考相比,随着时间的推移往往会变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
  • 感谢您的回复。上面的链接是 Java 库的免费请求限制 Web 服务。仅适用于家庭实验恕我直言。
【解决方案2】:

我知道这是一个老问题,而且我不熟悉 .Net(虽然 对我来说它看起来像 Java),而且我也不是任何专家级程序员 意思是,但我认为这可能会帮助其他有类似问题的人。

您使用的INSTANCE 方法仅返回文本。如果你 想要获取 HTML,您需要创建一个 BoilerpipeExtractor 和一个 HTMLHighlighter。然后你可以使用它的process 方法得到什么 你正在寻找。

final BoilerpipeExtractor extractor = CommonExtractors.ARTICLE_EXTRACTOR;
final HTMLHighlighter hh = HTMLHighlighter.newExtractingInstance();

.newExtractingInstance() 可以为您提供相关信息 HTML。另一个选项是.newHighlightingInstance(),它突出显示 正文,但保持整个 HTML 文档完整。

之后您需要做的就是致电HTMLHighlighterprocess 方法:

System.out.println(hh.process(url, extractor));

process 也可以是 process(TextDocument doc, InputSource is)process(TextDocument doc, String origHTML).

查看Github repo中的源代码。有注释 关于一切的作用。我查找了 Javadocs,但找不到 他们了。

在以下位置找到几乎完全一样的演示 HTMLHighlightDemo 在同一个仓库中。

【讨论】:

    猜你喜欢
    • 2010-10-06
    • 2017-04-24
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    相关资源
    最近更新 更多