java解析来自html的文本而不包含链接

时间:2013-11-19 21:05:49

标签: java jsoup jericho-html-parser

我正在尝试图书馆jericho和jsoup。但不幸的是,解析后的文本包含链接。事实上,我试图将html文本标记为查找关键字,这两个库会产生很多噪音,而这些噪音实际上很难处理。

public static String getPlainTextJsoup(String pageSrc) {
        Document doc = Jsoup.parse(pageSrc);
        return doc.body().text();
    }

public static String getPlainTextExtractJericho(String htmlSrc) {
        Source src = new Source(htmlSrc);
        return src.getTextExtractor().setIncludeAttributes(true).toString();
    }
 public static String getPlainText(String html) {
        Source htmlSource = new Source(html);
        Segment htmlSeg = new Segment(htmlSource, 0, html.length());
        Renderer htmlRend = new Renderer(htmlSeg);
       // System.out.println(htmlRend.toString());
        return htmlRend.toString();
    }

通过以下链接:

http://jobview.monster.com/Sr-Java-Developer-Job-Baltimore-MD-126949729.aspx

我的声音如下: 1061349 20baltimore 2C 2F

所有都来自link / src等标签。

如何防止这些链接元素出现在已解析的文本中?

由于

1 个答案:

答案 0 :(得分:1)

如何将a的文字设为""

像这样:

public static void main(final String[] args) throws IOException
{
    Document document = Jsoup.connect("http://www.google.com").get();

    System.out.println(document.text());

    // replace the "a"s text
    for (Element element: document.getElementsByTag("a"))
    {
        element.text("");
    }
    System.out.println("Without a's");
    System.out.println(document.text());
}

它将打印:

Google Suche Bilder Maps Play YouTube News Gmail Drive Mehr » Webprotokoll | Einstellungen | Anmelden × Schneller im Internet unterwegs Installieren Sie Google Chrome Deutschland   Erweiterte SucheSprachoptionen Werben mit GoogleUnternehmensangebote+GoogleÜber GoogleGoogle.com © 2013 - Datenschutzerklärung & Nutzungsbedingungen
Without a's
Google Suche | | × Schneller im Internet unterwegs Deutschland   © 2013 -