当前位置: 首页 > 面试题库 >

从HTML Java提取文本

羊舌兴文
2023-03-14
问题内容

我正在开发一个程序,该程序可以下载HTML页面,然后选择一些信息并将其写入另一个文件。

我想提取段落标签之间的信息,但是我只能获得段落的一行。我的代码如下:

FileReader fileReader = new FileReader(file);
BufferedReader buffRd = new BufferedReader(fileReader);
BufferedWriter out = new BufferedWriter(new FileWriter(newFile.txt));
String s;

while ((s = br.readLine()) !=null) {
    if(s.contains("<p>")) {
        try {
            out.write(s);
        } catch (IOException e) {
        }
    }
}

我试图添加另一个while循环,这样可以告诉程序继续写入文件,直到该行包含该

标记为止;

问题答案:

so

我真正喜欢使用的另一个html解析器是jsoup。您可以

在2行代码中获得所有元素。

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
Elements ps = doc.select("p");

然后再将其写到文件中

out.write(ps.text());  //it will append all of the p elements together in one long string

或者,如果您希望它们位于单独的行中,则可以遍历元素并将其分别写出。



 类似资料:
  • 问题内容: 我将div设置为,并设置了“ ” 样式,以便保留换行符。在Safari,FF和IE中,div的外观和工作原理几乎相同。一切都很好。我想做的是从该div中提取文本,但要确保其格式不会丢失- 特别是换行符。 我们使用的是jQuery,它的功能基本上是执行预定的DFS,并将DOM分支中的所有内容粘合在一起。这会丢失格式。 我看过该函数,但似乎所有这三种浏览器都使用div 幕后生成的实际HTM

  • 问题内容: AJAX调用返回的响应文本包括JSON字符串。我需要: 提取JSON字符串 修改它 然后重新插入以更新原始字符串 我不太担心步骤2和3,但是我不知道如何执行步骤1。我当时在考虑使用正则表达式,但是我不知道该怎么做,因为我的JSON可能具有嵌套对象的多个级别或数组。 问题答案: 您不能使用正则表达式从任意文本中提取JSON。由于正则表达式通常不够强大,无法验证JSON(除非可以使用PCR

  • 我需要从大文件中提取文本(最大限制50MB)文件可能是doc、ppt、xls、txt或pdf格式。到目前为止,我使用了ApachePOI'http://poi.apache.org/' 用于Microsoft Office文档和PDFBox从PDF中提取文本。然而,随着文件变大,提取过程变得缓慢,特别是以下文件。到目前为止我取得的成果: 1. PPTX-45MB-3分钟apx 2.PDF-62MB

  • 问题内容: 我想知道是否可以仅使用Javascript将文本包含在PDF文件中?如果是,谁能告诉我如何? 我知道有一些服务器端的Java,C#等库,但我宁愿不使用服务器。谢谢 问题答案: 这是一个古老的问题,但是由于pdf.js多年来一直在发展,所以我想给出一个新的答案。也就是说,它可以在本地完成,而无需涉及任何服务器或外部服务。新的pdf.js具有一个函数:page.getTextContent

  • 对于任何给定的问题,很可能已经有人把答案写在某个地方了。以电子形式提供的自然语言文本的数量真的惊人,并且与日俱增。然而,自然语言的复杂性使访问这些文本中的信息非常困难。NLP目前的技术水平仍然有很长的路要走才能够从不受限制的文本对意义建立通用的表示。如果我们不是集中我们的精力在问题或“实体关系”的有限集合,例如:“不同的设施位于何处”或“谁被什么公司雇用”上,我们就能取得重大进展。本章的目的是要回

  • 问题内容: 我只想从汤中最上面的元素中提取文本;但是汤.text也会给出所有子元素的文本: 我有 输出为。我只想“是”。 实现此目标的最佳方法是什么? 编辑 :我也想在解析’ ‘时输出。 问题答案: 那又如何呢? 编辑: 我想我已经了解了你现在想要的。尝试这个: