【问题标题】:Java Jsoup: Retrieve only the articleJava Jsoup:仅检索文章
【发布时间】:2016-08-03 15:08:02
【问题描述】:

试图检索文章的文本。我想选择

中的所有文本
<p>... </p>

我能够做到这一点。

但我只想从文章正文中检索文本,而不是整个页面

Document article = Jsoup.connect("html doc").get();
Elements paragraphs = article.select("p");

上面的代码从页面中获取整个文本。我只想要

之间的文字
<article itemprop= "articleBody">...</article>

对不起,如果这很难理解,我试图制定 尽我所能提出问题。

【问题讨论】:

  • 据我了解,您想要一个标签
    位于段落

    的某处?为此,您需要使用另一个选择器,例如paragraphs.select("article").text()

标签: java jsoup extract


【解决方案1】:

Elements#text() 将返回所有组合段落的纯文本内容(有关更多详细信息,请参阅此处https://jsoup.org/apidocs/org/jsoup/select/Elements.html

【讨论】:

  • 我在输出时使用了那个方法。 for(元素 p : 段落) writer.println(p.text());
  • @BorysZibrov 不,我设法通过使用 Elements paragraphs = article.select("#article-body article"); 来解决它还是谢谢你。
  • 完美!是的,我没有仔细阅读您的问题,对此感到抱歉。很高兴它起作用了
【解决方案2】:

尝试选择itemprop 属性

        for (Element paragraph : doc.select("article[itemprop=articleBody]"))
            System.out.println(paragraph.text());

请参阅CSS Selectors 了解更多提示

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多